Power Automate Desktop | カスタムフォームを使えばより柔軟なフローが作成できる!

カスタムフォームとはユーザーインターフェースのことで、フロー実行時にユーザーに情報を入力してもらったり、処理結果を表示したり、ユーザーの操作を待ったりすることができます。

具体的にはフロー実行時に、ユーザーに情報を入力してもらう必要がある場合や入力内容に基づいて、フローの処理内容を分岐させたい場合、または処理対象となるファイルやフォルダを、ユーザーに選択してもらいたい場合などにカスタムフォームを表示することで可能になります。

ユーザーインターフェースを自由に設計でき、入力項目やボタンの数や配置を自由に設定できる。画像や動画を埋め込むこともできる。

使い方

メッセージボックスの中にある、カスタムフォームを表示を選択して下さい。

カスタムフォームを表示アクションの詳細画面でカスタムフォームデザイナーをクリックするとカスタムフォームを作成することができます。

基本的には左側フォーム要素から使用したい要素を選択するか、フォーム構造の中にドラッグアンドドロップしていきます。この辺りは普段のフローを作成するのと同じ方法でできます。

テキスト入力の使い方

例えばテキスト入力要素を追加するとこのように右側にテキスト入力の画面が開きます。

IDはそのフォームが持つユニークIDになります。登録したデータが持つidになりますので他と被らないIDにする必要があります。

ラベルはその入力項目の表示名になります。例えば名前を入力するフォーム要素の場合、名前や苗字などつけておくと分かりやすいです。

また登録した内容は画面下にあるプレビューフォームで確認することができます。

苗字と名前を入れ送信ボタンを押すフォームを作るとこのようにプレビューフォームに表示され確認することができます。

完成したら完了ボタンを押すことでカスタムフォームの作成ができます。

実行するとこのようなフォームが開きます。
今回は苗字を佐藤、名前を太郎にして送信します。

そうするとフロー変数にCustomFormDataとして保存されます。

このようにフォーム要素につけたID名をもとにデータが格納されています。
データを使用する場合は%CustomFormData[‘ElementID’]% のように記述して使用します。
今回の場合は苗字であれば%CustomFormData[‘LastName’]% 
名前であれば%CustomFormData[‘Name’]%のようにすると取り出すことができます。

このあたりはデータテーブルの値の取り出し方と似ています。
データテーブルから値を取り出すには、%変数名[行番号][列番号]%と指定します。

 送信ボタンの使い方

送信ボタンについてもIDがありますのでこのようにすればどちらのボタンを押したかを判別することができます。

このように作成するとOkボタンとCancelボタンを作ることができ、これを実行して実際にCancelボタンをクリックすると

このようにButtonPressedにCancelが格納されます。
このデータをもとにフロー内でIF文をつかって分岐処理を作ることができます。

その他の設定

フォームの要素にはレイアウトの設定ができ、間隔の幅や区切り線。
また入力項目が必須項目かどうかの設定もできます。

URL プロパティにパーセンテージ文字が含まれている場合、無効な値検証エラーが発生します。

回避策: この問題が発生するのは、Power Automate がパーセント文字を変数または式として解決しようとするためです。 この問題を解決するには、パーセンテージ文字をエスケープしてURLを変数に格納した後、その変数をURLプロパティで使用します。

Power Automate Desktop | %を使用するとエラーが出る時
Power Automate Desktopでは変数名の設定に%記号で囲む必要があります。 なので%を単体で変数に登録したい場合など、例えば100%という文字を変数に追加したい場合に構文エラーが出てしまいます。 なのでこれを解決するにはどう...

プレビューには画像は表示されませんが、実行時に表示されます。

まとめ

今紹介したもの以外にも日付の入力や、ファイルの入力などあります。
それらを組み合わせて利用すると自動化処理の中に人間による柔軟性を持たせることができ、今まで以上に様々な業務に利用することができます。

是非フォーム要素も組み合わせて柔軟にフローを作成してみてはいかがでしょうか?

コメント