0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ExcelVBAをUiPathから動かす際にトラブルが生じやすいケースとは?

Posted at

趣旨

 今回、ExcelVBAをUiPathから呼び出す際に止まりやすいと感じるケースをいくつかあげたいと思います。

 そのケースは主に以下の3つのケースかな?と思います。
1,VBAでポップアップが出てきてUiPathでボタンを押下させるもの
2,VBAがある画面に対して「sendkeys」を実行するもの
3,Excelのマクロブックを開く際に自動でマクロが走るもの

1,VBAでポップアップが出てきてUiPathでボタンを押下させるもの

 このケースは、VBAマクロで「MsgBox」を使用しているものです。
 この「MsgBox」で出てきたポップアップのボタンを押下する際に「並列処理」を使うことが多いですが、その時にそのポップアップのボタンが引っかからないもしくはボタンは押下されているものの押し方が微妙で次に進まないなどの事象が考えられます。

2,VBAがある画面に対して「sendkeys」を実行するもの

 「sendkeys」の対象画面は常に「active」でないと反応しないためUiPathで別の画面がアクティブ化していると誤動作が発生してしまいます。

3,Excelのマクロブックを開く際に自動でマクロが走るもの

 これは、Excelマクロブックに「auto_open」マクロが入っている場合マクロが走っている間にUiPathから次の命令が飛ぶためExcelからエラーを出てきてその後UiPathも止まる流れです。

 Excelアプリケーションスコープで実行部分の最初に待機アクティビティを入れるか外部にVBSマクロを走らせて、そのマクロに「DisplayAlert」※を操作する部分を入れるかどちらかが対応策になるのではと思います。

※DisplayAlert
 VBAマクロで、Excelから出てくるアラームの表示を行うかどうかの変数です。
・True→アラーム表示
・False→アラーム非表示

以上、ご参照までに。

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?