Power PlatformでDX推進を目指すプロぺリアDX支援のメインビジュアル プロぺリアDX支援

即使える!Power Platform技術紹介

「なるべく短時間で」「効果の高い本質的な知識を」「煩わしい広告なしに」獲得!

Power Automate DesktopでUI要素を安定して扱う方法

本記事でわかること

1. はじめに

Power Automate Desktop(PAD)で安定した自動化を作れるかどうかは、UI要素の扱い方にかかっています。
この記事では「仕組みの理解」と「安定して動かすための順番」を整理します。

2. UI要素・セレクターの本質

UI要素とは、PADが操作対象を特定するための手がかりです。
セレクターは「アプリ名 → ウィンドウ → 部品」を特定するためのタグ情報で、HTMLでいうXPath、Windowsでいうハンドルのような概念です。

自動生成セレクターは便利ですが、しばしば「動的ID」や「位置番号」が含まれ、不安定になります。
👉 安定化には 「必要な属性だけを残す」 ことがポイントです。

3. 安定動作させるための工夫

UI要素の例(セレクターの書き方)

body > table > tbody > tr > td > button[Text="詳細"]
  • body … ページ全体のルート要素
  • table > tbody > tr > td … テーブル構造を順番に指定
  • button[Text="詳細"] … テキストが「詳細」のボタンをクリック対象として指定

実務でよく使うセレクター例:

window[Title="請求書管理システム"] > pane > button[Name="ログイン"]

→ 「タイトルが『請求書管理システム』のウィンドウ内にある、Name 属性が『ログイン』のボタン」

3-1. UI要素が消える/変わるときの対応

  • 要素が表示されるのを待つ → 「UI要素が存在するまで待機」アクション
  • ダイアログや読み込み中など、一時的に消える場合にも有効

3-2. セレクターを安定させる編集の順番

  1. 自動生成を確認
  2. 不要な動的ID(例: div_12345)が入っていないか確認
  3. 属性を削る:ID/インデックスを削除、nameやtitleなど安定的な属性を残す
  4. 親要素を活用:同名ボタンが複数ある場合、親要素で文脈を絞り込む
  5. 部分一致に切り替える:属性が変動する場合 → "含む" や "次の値で開始" に設定

👉 「削る → 絞る → 親を使う → 部分一致」の流れを身につけると安定しやすい

UI要素のセレクタを編集して安定性を高める例

UI要素取得の画像

UI要素の演算子を変更して安定性を高める例

UI要素編集の画像

UI要素で値に変数を利用して安定性を高める例

UI要素で変数を選択する画像
⚠️ 注意
変数を選択後、下の「セレクタをプレビューする」エリアを確認して下さい。
その中に「%変数名%」という記述があると思いますが、もしそれが「"」で囲われていた場合は修正が必要です。
※「"%CarCode%"」など
右上の「テキスト エディター」のトグルをOFF→ONにして、セレクターを編集できる状態にし、該当箇所から「"」を消しましょう。
※「"%CarCode%"」→「%CarCode%
例:
... > button[Class="%変数名%"] > ...
↓
... > button[Class=%変数名%] > ...
// %変数名%の周りにある「"」を消す!
もし最初から「%変数名%」だけであれば、そのままで大丈夫です。「"」で囲われていると、文字列として認識されてしまうので注意!

Point! NameやClass、Titleなどで安定化。とにかく「汎用的っぽい」セレクタを目指すとよいです!

4. 実践TIPS:それでも動かない時の代替手段

  1. セレクターの編集(属性削除/部分一致)
  2. キー操作で代用(例: Tab → Enter)
  3. 座標クリック(最終手段、解像度やウィンドウ位置で狂いやすい)

👉 「順番」を明示することで現場で迷わず対処可能

5. 実務でよくある不安定パターンと解決策

  • パターン1:ボタンのIDが毎回変わる → 部分一致、親要素で補強
  • パターン2:ロード中でUI要素が消える → 「UI要素が存在するまで待機」を挟む
  • パターン3:ブラウザ更新で要素がリセットされる → 「新しいウィンドウ/タブ」アクションでキャプチャし直す

6. まとめ

不安定の原因は「セレクターに余計な情報が含まれている」ことが多いです。
編集の順番は 削る → 安定属性を残す → 親で補強 → 部分一致
ダメなら「キー操作」、最終手段は「座標クリック」。
👉 この順番で対処すれば「昨日は動いたのに今日は動かない」を大幅に減らせます。

この記事を読めば、PADが動いたり動かなかったりする原因を論理的に判断できるようになります。

Power AutomateでUI操作の安定化に困ったら
設計レビューや実装相談もお気軽にどうぞ。

あなたの仕事にも、変化を。

無料相談から、DXの第一歩を踏み出しませんか?

お問い合わせ ブログ一覧