• ベストアンサー

Application.OnTime が動作するタイミング(vba)

まず10秒たってからtest2222と表示させて、次にtestと表示させるプログラムを以下のように作成したのですが、なぜか先にtestが表示されて、次にtest2222が表示されます。 なぜなのでしょうか? 分かる方がいれば教えてください。 よろしくお願いします。 Sub aa() Application.OnTime Now + TimeValue("00:00:10"), "kara" MsgBox "test" End Sub Sub kara() MsgBox "test22222" End Sub

質問者が選んだベストアンサー

  • ベストアンサー
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.1

OnTime は実行を予約するだけで直ぐに次の行に移るようです。 実行を遅らせたいなら Timer を使えば良いかと思います。

すると、全ての回答が全文表示されます。

その他の回答 (1)

noname#187541
noname#187541
回答No.2

こんばんは。 Application.OnTimeで実行がストップはしないので次の行が実行されて表示されるのです。 MsgBox "test" を Sub kara() の MsgBox "test22222" の次に入れるといいのでは?

すると、全ての回答が全文表示されます。

関連するQ&A