Power Automate Desktopの変数についての記事で、変数のデータ型についてご説明させていただきましたが、今回の記事は、その中でもリスト型について、ご説明させていただきます。
リスト型は、一つの変数で複数の値を格納・扱うことができるのが特徴で、格納されている複数の値から特定の値を指定し、取り出すことが可能です。
Power Automate Desktopの変数のデータ型の中でも特に躓きやすいポイントなので、今回の記事ではリスト型について、丁寧にご説明させていただきます。

リストとは

リストは、プログラミングで言う「配列」というものにあたり、リストは1次元配列というものにあたり、また別記事でご紹介するデータテーブルは、2次元配列というものになります。
「配列」とはデータを入れる箱(変数)が複数集まった状態をイメージしていただけた分かりやすいと思います。
リストは横1列に、データテーブルは横+縦方向に箱が並んでいるイメージです。
各箱を、配列の「要素」と呼び、添え字と呼ばれる各要素に振られる番号を指定することで、各配列から各要素を取り出すことが可能です。
配列のメリットは、一つの変数にたくさんのデータを格納、取り出せることです。
例えば社員が100人いる会社で全社員に対して何かしらの処理をする際、一人ひとりにそれぞれ変数を定義していたら、定義だけでも膨大な時間がかかりますよね。
しかし配列では、一つの変数に様々なデータを格納することが可能ですので、よりたくさんのデータを扱いやすくするだけでなく、そのデータの中でもいろいろな組み合わせをもったデータを格納、取り扱えるようにすることが可能です。

リストの作成方法

Power Automate Desktopでリストを作成するには、「変数の設定」で作成することが可能です。
作成方法は簡単で、角括弧[]の中にカンマ区切りで値を書き、最後%%でそれらを囲みます。

リストは以下図のような構造で作成されます。
各アイテムに振られる番号は「0」から始まる連番となり、取り出す際の番号指定の際に使用します。

テキストの場合は’シングルクオーテーションで各項目を囲みます。

リストの追加

作成済みの項目にリストを追加することも可能です。
まずは、項目が何もないリストを作成するために、「新しいリスト」をドラッグします。
リストの変数名を指定し保存すれば空のリストが作成されますので、今後のアクションでこちらに項目を追加していきます。

既にあるリストに項目を追加するには、「項目をリストに追加」をドラッグ、選択画面の「項目の追加」に追加したい値を指定し、「追加先リスト」に、追加する対象のリストの変数を指定します。

新規項目は、常にリストの末尾に追加されます。

項目件数の取得

リストの項目件数を取得するには、数式で%変数名.count%で取得可能です。

値の取得

リストから値を取得するには、%変数名[番号]%で指定することで可能です。
例えば以下図のようなリストがあったとします。

この場合、番号に「0」を指定すると「100」、「1」を指定すると「200」が返ってきます。

末尾の項目を取得

件数の取得を応用して、%変数名[変数名.count-1]%で取得することで可能です。

項目の番号は0から振られるため、全体の件数-1が最後の項目番号になることを利用したものです。

削除方法

リスト内の項目削除方法は、「値」を指定する方法と「番号」を指定する方法の2種類あります。
どちらも変数アクション内にある「リストから項目を削除」を使用します。
番号で指定する場合は、選択画面の「項目の削除基準」に「インデックス」を、その下にある「インデックス」に、該当するインデックス番号を指定します。

上記のリストであれば、インデックス番号「1」を指定した場合は、下記のようなリストとなります。

値で指定する場合は、「項目の削除基準」に「値」を指定し、その下にある「値」に削除したい値を入力します。
「一致した項目をすべて削除」をONにすれば、リストの中で該当する値があれば全て削除されることになり、OFFにした場合は、リストの中で最初に一致する値のみ削除されます。

重複の削除

リスト内で重複する値を削除するには、変数アクション内にある「リストから重複する項目を削除」を使用します。
「重複する項目を削除するリスト」にリストの変数名を指定するだけで、そのリスト内にある重複する項目を削除してくれます。
「重複する項目の検索時にテキストの大文字と小文字を区別しない」をONにすることで、大文字小文字関係なく、同一文字を削除してくれます(例:abcとABCなど)

リストのクリア

リスト内にある項目を全てクリアにする場合は、変数アクション内にある「リストのクリア」を使用します。
選択画面でクリアしたいリストの変数を指定するだけで、リスト内にあるすべての項目を全て消去することが可能です。

まとめ

今回は配列の基本中の基本である、リストの使い方にご説明させていただきました。
本記事では、リスト操作の中でも頻繁に使われる操作方法をご説明させていただきましたので、この記事内容を覚えることによって、リスト操作における基本は網羅出来ていると言っても過言ではありません。
別記事で、リストよりもさらにデータ数を扱えるデータテーブルについてご説明させていただきますので、そちらの記事もご覧いただけたらと思います。