0

私はレガシーデータベースに取り組んでいます。具体的には、レポートを変更します。レポートの基になっているクエリ/テーブルを特定しました。テーブルの1つには、数十のマクロによって生成された一時的なテーブルであるというすべての特徴があります。

テーブルを生成するAppendQueryと、クエリを実行するマクロを特定することができました。次に、どのフォームイベントがそのマクロを起動するかを調べたいと思います。レポートが生成されるたびに実行されますか、週に1回、四半期に1回、または...レポートを印刷する「ボタン」の後ろのマクロには何もありません。また、レポートでイベントは発生しません。

すべてのフォームのすべてのコントロールを反復処理できますが、どのプロパティを探していますか?ポインタ/キーワードガイダンスをいただければ幸いです。

4

1 に答える 1

2

いくつかの注意点として、マクロの名前を知っていると、関連するボタンを見つけやすくなります。

Sub FindMacros()
For Each f In CurrentProject.AllForms
    DoCmd.OpenForm f.Name, acDesign

    Set frm = Forms(f.Name)
    For Each ctl In frm.Controls
        If ctl.ControlType = acCommandButton Then
            Debug.Print ctl.OnClick
        End If
    Next

    DoCmd.Close acForm, f.Name, acSaveNo
Next
End Sub
于 2012-05-24T07:50:19.897 に答える