★ Access2000VBA・Excel2000VBA独学~ミリ秒を待つ方法など、「待つ」、方法

  

参考URL:その他の「待つ」
電帳法索引簿などで使える?_VBA(64bitのみ)・指定したファイルが開くまで待ってAppActivateしたのち、ウィンドウサイズをAPIでリサイズするコード。結局Sleep関数で待つことが必要だったけど、2秒も3秒も待たなくてよくなったので(0.5秒でOKになったので)、暫定的にこれを使う。(本当はもっとちゃんとしたコードがあるはず。でもなかなか検索にヒットしないのでひとまずこれで。)

  

★ ミリ秒待つ:Application.Waitの場合

0.5秒
Application.Wait [Now() + "0:00:00.5"]

1秒
Application.Wait [Now() + "0:00:01"]

https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13232462458

※秒数を変数化したらうまく動かなかったのでSleep関数のほうがいいみたい。

  
★ ミリ秒待つ:Sleep関数の場合
呼び出し側スレッドを一定時間だけ中断します。

'API:Sleep関数
'Excel2000でも動く。Win32APIなので、64bit版のExcelでは動かない。
Declare Sub Sleep Lib "kernel32" (ByVal ms As Long)

sleep(ミリ秒数)

中断する時間をミリ秒単位で指定します。INFINITE を指定すると中断時間が無限になります。
環境情報

インクルード ファイル: api_system.sbp 内で定義済み
DLLファイル: kernel32.dll

※DoEventsも一緒に使うといいかも。

  

★ 数秒待つ:Now関数とDoEventsの併用の場合
  

5秒待つ例 ↓

  

★図形の描画で待つ(Wait。DoEvents不要。)
※Accessで言う、Repaintみたいな使い方。

https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13276823433

以下、上記のURLからの引用。