LoginSignup
2
6

More than 5 years have passed since last update.

WinActor VBAマクロ非同期実行

Posted at

問題

WinActorでマクロ実行するとマクロでダイアログが出ても自動操作できない。

オフィシャル対処(WinActor FAQ (よくある質問)2018.11.8 第5.1版より)

1.実行ボタンを画像マッチングしてクリック
2.キーボードエミュレーションAlt+L+P+Mでマクロ一覧実行後実行
3.マクロ書き換え

想定理由

ライブラリのマクロ実行は同期処理であるため、マクロ終了まで操作が出来ない。

希望

マクロで何か問い合わせがあった際に自動でYesなりなんなりしてほしい。
マクロをいっそ書き換えようか迷ったが、メリットが失われてしまうのを懸念
→ 基幹システムの既存の処理を変えずに実行できる
それに今後もありそうなので簡単な回避策が欲しい。

対処方法

同期実行を非同期に切り替えてみる。

書換前
xlsApp.Run "'" + filePath + "'!" + !マクロ名!
書換後
xlsApp.OnTime Now + TimeValue("00:00:00"), "'" + filePath + "'!" + !マクロ名!

懸念

非同期なのでマクロ実行終了を待つ必要がある。
フォーラムはFAQで自己発信系のこういったノウハウためる感じが無い。

 

2
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
6