
要素を取得しているのに「表示するUI要素はありません」と表示される場合の対処法
2021-8-4
2021-7-2
こんにちはリビットです。
Power Automateの強力な自動化機能の1つに、ウィンドウコンテンツの取得があります。
ウィンドウを画像としてではなくパーツ単位で識別する、まさにOSを開発しているMicrosoftだからこそでき得る機能ですね。
ただ、取得したウィンドウのパーツを管理する「UI要素」という機能には少し厄介なポイントがあります。
今回は私がつまづいた、UI要素の取得の際にミスしがちなポイントと、改善方法を紹介します。
選択しているアクションは間違っていないか?
Power Automateには、Webページコンテンツとウィンドウコンテンツ、2つのUI要素があります。
しかし、UI要素を選択する画面はWebページとウィンドウどちらも同じ場所で管理されています。画面右側の「UI要素」という一覧ですね。
ユーザーに意識させないためにやっていることだと思いますが、それぞれ使えるフローが分かれています。ウィンドウコンテンツはWebオートメーションでは使えませんし、WebページコンテンツはUIオートメーションでは使えません。
このため、ウィンドウコンテンツを取得したつもりがWebページコンテンツを取得していて、取得したはずなのに「表示するUI要素はありません」と出続けてしまうという状態が起きます。
私が実際に間違えていたのは、
- 遅延 > ウィンドウコンテンツを待機する
- 遅延 > Webページのコンテンツを待機する
この2つです。
ブラウザの操作を行っていて、ページ遷移後の特定のコンテンツを待機しようと思い「ウィンドウコンテンツを待機する」を選択していたため、何度要素を取得しても一覧に表示されませんでした。
このアクション以外にも、「UIオートメーション」と「Webオートメーション」には似たアクションがいくつか存在しています。
うまく動かない場合はUI要素だけではなく、選択しているアクションは間違っていないか確認してみましょう。
Power Automateがエラーを出力している場合
Power Automate Desktopは無償提供され始めてまだ日が浅いです。
不具合もいくつかあるようで、私も使っていて何度かエラーが発生し異常終了しました。
ただこのシステムのエラー、作成中のフローウィンドウに出るのではなくフロー一覧ウィンドウ(Power Automate Desktopを立ち上げて最初に表示されるウィンドウ)に出ることが多いです。
これだと作成中のフローウィンドウに隠れて、エラーが発生したことに気づけません。
もしかすると実行できないのはエラーによるものである可能性があるため、一度保存しアプリを立ち上げなおすことで解決するかもしれません。