2017年9月21日

【Access】起動時にプロシージャを実行させるには


Accessのファイルを開いたときに、フォームを開く前にプロシージャを実行させたいといったことがあります。

そういった場合は、AutoExecマクロを使います。

たとえば、標準モジュールにあるMain()というプロシージャを起動時に実行させたいとします。

Public Function Main() As Boolean

    MsgBox "起動中..."
    
    Main = False
    
End Function
※必ずFunctionプロシージャで作成してください。Subプロシージャだと下記のAutoExecマクロで実行できません。


まず、マクロを作成します。

リボンの「作成」メニューからマクロをクリックします。



次に実行するアクションを選びます。
ここでは、「プロシージャの実行」を選んでください。
選んだら、プロシージャ名に「Main()」と入力します。



最後に名前を付けて保存をします。
名前は、「AutoExec」にしてください。

これで、Accessのファイルを開いたときに、最初にMain()プロシージャが実行されるようになります。


それでは、実際にファイルを開いてみます。


メッセージボックスが表示されました。


このAutoExecを使ってフォームが開く前にプロシージャを実行するというやり方はよく行います。
たとえば、外部データベースへの接続処理を行ったり、ログの初期設定などを行ったります。ぜひ、参考にしてみてください。






スポンサーリンク