Power Automate Desktop(PAD)で、データテーブルに行を追加・削除する方法について解説します。
はじめに
PADでデータテーブルに行を追加する方法は2通りあります。
パターン1:あらかじめデータテーブルを作っておく方法
1つ目は、あらかじめデータテーブルを用意しておき、そこに行を追加する方法です。

- メリット:楽
- デメリット:追加する行がデータテーブルの列数と異なる場合エラーになる
パターン2:Excel上で行を追加する方法
2つ目は、いったんデータテーブルをExcelに転記して、Excel上で行追加してPADに戻すやり方です。



- メリット:存在しない行にも新規追加ができる
- デメリット:フローが増える・めんどくさい
それぞれのやり方について、以降で詳しく解説します。
パターン1:あらかじめデータテーブルを作っておく方法
はじめに、あらかじめデータテーブルを作っておく方法から解説します。
データテーブルを作成する
新しい データテーブルを作成する
今回は、以下のようなデータテーブルを作成しました。

行をデータテーブルに挿入する
行をデータテーブルに挿入する

挿入場所は、「末尾」「行インデックスの前」いずれかを選択できます。

「行インデックスの前」の場合、0はじまりのインデックスとなります。例えば1を指定したら、2行目の上に行が追加されます。
行をべた書きで指定する方法
「新しい値」には以下を設定します。
%['004', 'ぶどう']%

設定する値は、データテーブルのカラム数に合わせて適宜変更してください。
リストを行として挿入する方法
リストを新しい行として追加することも可能です。

リストの中身は以下のようになっています。

こちらを実行しても、先ほどと同様の結果になります。

注意点
このアクションを使う際の注意点として、挿入先のデータテーブルと同じ列数のデータを設定しないとエラーになります。

追加するために指定された値の数(1)がデータテーブルの列の数(2)と一致しません。
上記は、1つ目の要素に「ぶどう」という値のみが入ったリストを追加しようとした際のエラーです。

リストは1列なのに対して、データテーブルは2列のため、列数が異なるというエラーが発生しています。

つまり、本アクションを使う場合は、挿入するデータの列が、挿入先のデータテーブルの列数と一致している必要があります。
パターン2:Excel上で行を追加する方法
次に、Excel上で行を追加する方法です。
こちらは少し面倒ではあるものの、列数がそろっていなくても行を追加できます。
末尾に新しい行を挿入する場合
末尾に新しい行を追加する場合のフローは以下のようになります。以降で詳しく解説します。

Excelワークシートに書き込む
Excelに、データテーブルの内容を書き込みます。
Excel ワークシートに書き込む
このアクションでは、データテーブルの内容をExcel上に転記します。

「列」「行」にそれぞれ1を設定すると、A1セルを起点にデータテーブルの内容が展開されます。
Excelシートの最初の空の行を取得
Excel シートの最初の空の行を取得

このアクションで、最初の空行を取得します。
Excelワークシートに書き込む
Excel ワークシートに書き込む

書き込む値は任意でOK、「列」には1を、「行」には先ほど取得した最初の空行(FirstFreeRowOnColumn)を設定します。
これを実行すると、末尾に新しい行が追加されます。

任意の行に新しい行を追加する場合
任意の行に新しい行を追加したい場合の方法は、末尾に追加するときと少し異なります。
フローは以下のようになります。以降で詳しく解説します。

Excelワークシートに行を挿入
Excel ワークシートに行を挿入

「行インデックス」には、挿入したい行を指定します(1始まり)。今回は2を指定したので、2行目に新しい列が挿入されました。

Excelワークシートに書き込む
Excel ワークシートに書き込む

書き込む値は任意でOK、「列」は1、「行」は先ほど追加した行数を指定します。
あとは先ほどと同様、「Excelワークシートから読み取る」を追加して実行すると、以下のように指定した行に追加することができます。

指定した行を削除する方法
データテーブルから指定した行を削除するには、以下のアクションを使います。
データテーブルから行を削除する

「行インデックス」には、削除したい行を設定します(0始まり)。
これを実行すると、データテーブルから指定された位置の行が削除されます。

データテーブルの列追加・削除をしたい場合
データテーブルの列追加・削除をしたい場合は、PAD上にそのようなアクションがないためExcelに展開する方法を使う必要があります。
詳しくは以下記事にて解説しています。
まとめ
今回は、Power Automate Desktop(PAD)で、データテーブルに行を追加・削除する方法について解説しました。
PADのデータテーブルへの行・列の追加はアクションが充実していないため操作が面倒なことがあります。Microsoft公式としても、回避策としてExcelを使うよう書いてあるので(参考)、今のところ面倒ですが今回紹介した手順で対応いただければと思います。

コメント