一定の時間待機した後に指定のマクロを実行したい(例えば、マクロAを実行して3秒後にマクロBを実行するには?)

初心者のためのExcel VBA

一定の時間(例えば3秒)後に指定したマクロを実行させる方法

指定した時間後に任意のマクロを実行するにはApplication.onTimeメソッドを使います。

Application.onTimeメソッドの具体的な使い方

Application.onTime 何秒後にマクロAを実行するか, “マクロA”

例:3秒後にSubプロシージャー「Test()」を実行する場合

Application.onTime Now + TimeValue(“00:00:03”), “Test”

Now現在の日時を表します(例:2017/3/30  20:06:08)。

Now + TimeValue(“00:00:03”)は「今から3秒後」を意味します。

[スポンサードリンク]

マクロAを実行し、3秒経過したら、マクロBを実行するサンプルプログラム

下記のサンプルプログラムではSubプロシージャ「Question」を実行し、3秒経過した後に、Subプロシージャ「Answer」を実行します。

Call プロシージャ名」と書くことで、指定したプロシージャを呼び出すことができます。プロシージャ名に括弧は含めません。

このサンプルプログラムを実行すると、「問.英単語「concentrate」の意味は?」というメッセージボックスが表示され、[OK]をクリックすると、それから3秒後に、「答.英単語「concentrate」の意味は「集中する」です。」というメッセージボックスが表示されます。

【実行結果】

関連項目

  • Coming Soon

[スポンサードリンク]

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA