teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2020/12/28 15:54

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -10,4 +10,11 @@
10
10
  この処理が**非同期**であるから、待ち合わせの為の処理が必要になるわけで、**同期**処理として実行できれば、待ち合わせは不要になります。
11
11
 
12
12
  どのような処理を行っているのか不明なので、役立つか分かりませんが以下参考に。
13
- [VBAで他のアプリケーションを同期起動する(WshShell)](https://vbabeginner.net/wshshell/)
13
+ [VBAで他のアプリケーションを同期起動する(WshShell)](https://vbabeginner.net/wshshell/)
14
+
15
+ [DoEvents 関数](https://docs.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/doevents-function)
16
+
17
+ > DoEvents はオペレーティング システムに制御を渡します。 オペレーティング システムがキュー内のイベントの処理を終了し、SendKeys キューのすべてのキーが送信された後、制御が戻されます。
18
+
19
+ 上記は、自身の処理への割り当てを返却し、他の処理を優先させると読み替える事が出来ます。
20
+ ただ、「SendKeys キューのすべてのキーが送信された」状態は、「他の処理の全てが完了した」と同義ではありません。