Home » Access VBA » Access VBAでApplication.Waitを使いたい

Access VBAでApplication.Waitを使いたい

動作検証バージョン:Windows 11 Home + 64bit Access & Excel バージョン 2504(ビルド18730.20142クイック実行)

「application wait access vba」
といった検索キーワードでアクセスがありました。

Access.ApplicationにWaitは無い

Excel VBAの経験のある方が、Access VBAで

Application.Wait Now + TimeValue("00:00:03")

といったコードを書いてコンパイルしたら、

コンパイルエラー:
メソッドまたはデータメンバーが見つかりません。

エラーとなってしまったのではないかと私は推測しています。

[スポンサードリンク]

Access.Applicationオブジェクトには、Waitメソッドが用意されていないため、このコンパイルエラーが発生します。
どうしても

Application.Wait Now + TimeValue("00:00:03")

といったコードを使いたいのであれば、ExcelのApplicationオブジェクトを利用しましょう。

Excel.Application.Waitを利用するサンプルプロシージャ

以下のSubプロシージャを実行してください。

Sub ExcelのApplication_Waitを利用する()

 MsgBox "Excel.Application.Waitを使って3秒待機します。"
 
 With CreateObject(Class:="Excel.Application")
  .Wait Now + TimeValue("00:00:03")
 End With
 
 MsgBox "3秒待機しました!"

End Sub

「Excel.Application.Waitを使って3秒待機します。」
メッセージボックスが表示されて、3秒ほど経過すると
「3秒待機しました!」
と表示されます。

サンプルプロシージャで行っている処理

VBAのCreateObject関数を使ってExcel.Applicationを非表示状態で起動しておいて、

 With CreateObject(Class:="Excel.Application")

Excel.Application.Waitメソッドに、VBAのNow関数とTimeValue関数を引数に指定することで、

  .Wait Now + TimeValue("00:00:03")

3秒ほど待機しています。

[スポンサードリンク]

Home » Access VBA » Access VBAでApplication.Waitを使いたい

「Access VBA」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.