ブログの夏|会社員の副業ライフハックメディア!

Power Automate Desktop|ラジオボタンの選択値を取得する方法【カスタムフォーム】

当ページには広告が含まれています
Power Automate Desktop|ラジオボタンの自動選択

この記事では、Power Automate Desktop(以下、PAD)のカスタムフォームを使用して、Webシステムのラジオボタンを自動選択する方法を紹介します。

カスタムフォームは条件を分岐するときに便利なので、使いやすいフローを作りたい方はぜひ参考にどうぞ。

なつP

動きはこんな感じです。

この記事でわかること
  • カスタムフォームの設定方法
  • カスタムフォームで選択した値を利用してWebシステムのラジオボタンを選択する方法
目次

全体の流れ(フロー図)

PAD|ラジオボタンのサンプルページ

今回は、Webシステムに設置されている3項目(性別・予定日・場所)を、カスタムフォームで選択した内容に応じて自動で選択していきます。

全体のフローは下図のようになります。

PAD|ラジオボタン自動選択 - 全フロー

1.カスタムフォームを作成する

まず、アクションから「カスタムフォームを表示」を追加し、カスタムフォームをデザインしていきます。

選択項目の設定

PAD|カスタムフォームの作り方

「フォーム要素」から使いたいアクションを選択し、「フォーム構造」のエリアにドラッグ&ドロップします。

今回は、項目が3つ(性別・予定日・場所)あるため、「テキスト入力」を3つ追加して以下のように設定します。

項目選択肢セットの入力
IDChoice set input ※変数的な役割
ラベルフォーム上に表示される項目名
既定値フォームにデフォルトで入力・選択しておきたい値
複数の選択を許可複数選択可の場合はチェックを入れる
スタイル展開済み or コンパクトを選択
選択肢ラジオボタンの項目
「性別」の選択肢を作成した例
スタイルの例

今回の例では、性別と場所は「展開済み」、予定日は「コンパクト」で作成しています。

その他、レイアウトの調整や必須項目にする設定もあるので、必要な際は調整してください。

同様に「予定日(ID:Choice set input2)」と「場所(ID:Choice set input3)」も追加しましょう。

ここでは、IDの役割がとても大切です。
後ほど、UI要素を設定する際に各IDを使用します。

送信ボタンを追加

最後に「送信(Submit)」ボタンを追加します。

送信ボタンは、カスタムフォームで入力・選択した内容を確定するボタンです。

送信ボタンがないと、フォームを終了できないため必ず追加します。

項目選択肢セットの入力
IDSubmit
タイトル[OK]や[実行]など
指定した入力を無視する必須項目がある場合、入力がなくても強制的に進める

最後に、忘れずに「完了」をクリックしましょう。

2.WebページのラジオボタンのUI要素を取得する

まずはブラウザを起動し、ラジオボタンが配置されているページを開きます。

アクションを1つずつ追加して設定することもできますが、レコーダーを使用すると簡単かつスムーズに設定できます。

新しいChromeを起動する

PAD|ブラウザの起動

ブラウザを起動して、ラジオボタンのあるページ(http://〜)を[Browser]に保存します。

本記事ではGoogle Chromeを使用しています。
Microsoft Edgeを使用する場合は、対応するブラウザアクションに読み替えてください。

Webページのリンクをクリックする

PAD|Webページのリンクをクリック

「Webページのリンクをクリックする」アクションを使用し、UI要素を取得します。

UI要素は、それぞれの項目ごとに任意の選択肢を1つ取得すれば問題ありません。

PAD|ラジオボタン項目のUI要素取得

例)

  • 性別→男性
  • 予定日→今日
  • 場所→東京

UI要素のセレクターを変更する

カスタムフォームで選択した値を、対象のラジオボタンを選択できるようにUI要素のセレクターを変更します。

本記事では、取得したUI要素の属性(Span)を書き換えて対象を特定しています。
WebサイトのHTML構造によって取得できる属性や設定方法、動作可否は異なります。

STEP
ダイアログボックを表示し編集
PAD|UI要素のセレクター編集方法

「Webページのリンクをクリック」をダブルクリックしてダイアログボックを表示します。

鉛筆マーク(編集)をクリックします。

STEP
テキストエディターをONにする
PAD|テキストエディターON

UI要素のセレクターの画面で、テキストエディターを[ON]にします。

STEP
セレクターをカスタムフォームで選択した変数[ID]に変更
PAD|UI要素のセレクター編集

span[Text=”男性”]の部分を、カスタムフォームで取得した性別のID[=Chose set input]を設定します。

性別:span[Text-“%CustomFormDate[‘Choice set input‘]%”]

同様に、予定日と場所についても設定します。

予定日:span[Text-“%CustomFormDate[‘Choice set input2‘]%”]

場所:span[Text-“%CustomFormDate[‘Choice set input3‘]%”]

UI要素の名前を変更

フロー内のUI要素名が始めにクリックしたものになっているので、UI要素ペインをから名前を変更し分かりやすくします。

PAD|UI要素名の変更(UI要素ペイン)
  1. 右のUI要素ペインを選択
  2. 変更したいUI要素を選択し右クリック
  3. [名前の変更]をクリックし修正

以上で完成です。

ここまでできたら実行で試してみましょう。

応用編|実行前に確認メッセージを表示する

PAD|メッセージを表示(OK - キャンセル)

誤操作を防ぐために、カスタムフォーム入力後に確認画面を表示する方法もおすすめです。

STEP
「メッセージを表示」アクションの追加
PAD|メッセージ表示ダイアログボックス

「メッセージを表示」アクションを追加し、メッセージの内容を作成します。

STEP
「If」アクションの追加
PAD|メッセージ表示からのIfアクション

「If」アクションを追加し、「キャンセル」をクリックした場合は、If内のアクションを実行する設定を行います。

PAD|Ifアクションでフロー停止
STEP
フローを停止する
PAD|フローの停止

Ifアクション内に「フローを停止する」を入れます。

これでOKを選択した場合は実行、もしキャンセルを選択した場合はフローが停止します。

これにより、実行前に選択した内容を確認し、処理を進めることができます。

【補足】UI要素の取得が1つでいいのはなぜ?

『UI要素に“男性”だけ取得しているのになぜ「女性」や「その他」を選択できるのか?』と、私も始めは不思議に思っていました。

これができるのは、ラジオボタンがHTML構造によってグループ化されているためのようです。

例えば、「性別」と「場所」にそれぞれ「その他」という選択肢があった場合でも、HTML上では別グループとして管理されています。

HTML上では、idやnameを使って別のグループとして管理されている場合が多い

ID = gender
 ・span → 男性
 ・span → 女性
 ・span → その他

ID = place
 ・span → 日本
 ・span → その他

そのため、PADはサイト上の「その他」という文字を探しているのではなく、取得したUI要素の構造をもとに対象を特定できるようになっています。

HTML構造上、PADがうまくい動作しないケースもあります。

まとめ

今回は、Power Automate Desktopのカスタムフォームを使用して、選択した値をWebシステムのラジオボタンへ反映する方法を紹介しました。

カスタムフォームを活用することで、実行時に選択した内容に応じて処理を切り替えられ、より便利なフローになります。

多くの業務システムではUI要素を取得して操作できるケースが多いため、ぜひ実際のフロー作成に活用してみてください。

Power Automate Desktop|ラジオボタンの自動選択

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
目次