今回は、Power Automte Desktop(PAD)でデータテーブルに列を追加する方法と、列を削除する方法についてそれぞれ解説します。
データテーブル列を追加するアクションは存在しない
まず最初に、PADのデータテーブルに追加するというアクションは存在しません。
何で行追加・列追加がないのでしょう。とても不便です。。。
回避策としてExcelを使う
そのため、以下の手順で実現します。
要は、PAD上でデータテーブルに列追加ができないから、Excelに転記して、Excel上で列追加したあとにそれをPADに戻す、ということです。
データテーブルに列を追加する方法(回避策)
では、実際のフローで確認していきましょう。
フローの全体図は以下になります。
データテーブルの作成
今回は、Webサイト上のテーブルをデータテーブルに取得して、そのデータテーブルに列追加をしたいと思います。取得するWebサイトは「2023年に学習をおすすめしたい人気プログラミング言語ランキング」とします。
フローは以下のようになっており、
実行するとDataFromWebPageという変数には、以下のようにテーブルの情報がデータテーブルとして取得されます。
Excel内にデータテーブルの内容を転記する
データテーブルの内容を、空のExcelシートに転記します。
設定内容は何も変更しないでOKです。
Excelワークシートに書き込む
Excelに、データテーブルの内容を書き込みます。
「書き込む値」にはデータテーブル変数を、「列」「行」はいずれも1を設定します。これで、A1セルを起点にデータテーブルの内容が転記されます。
Excelワークシートに列を挿入
Excelの表に、列を挿入します。
「列」には、何列目に列を挿入したいかを設定します(1始まり)。
今回は3を指定したので、3列目に列が挿入されました。
ExcelからPADにデータを戻す
最後に、列を追加したExcelをPADに戻します。
「取得」は、「ワークシートに含まれる使用可能なすべての値」を選択します。また、一行目にカラム名が存在する場合は、詳細を開き「範囲の最初に列名が含まれています」を選択するのを忘れないように注意してください。
これで、Excelの内容がごっそり取得され、新しいデータテーブル変数「ExcelData」に格納されます。
加工後のデータテーブルの中身を確認してみる
では、生成されたデータテーブルの中身を確認してみましょう。
新しく作成された「ExcelData」というデータテーブル変数には、列が追加された状態となっていることが確認できました。
列の最後に列を追加する場合
データテーブルの最後の列に列を追加したい場合は、上記の方法ではうまくいきませんでした。
そこで、以下の方法で対応します。
Excelシートの最初の空の列を取得する
何も変更しないでOKです。
カラムを適当につける
「書き込む値」は、追加する列のカラム名となります。
「列」には、先ほど取得したFirstFreeColumn、行には1を設定します。
これで、最後の列が空の列とみなされなくなり、データテーブルとして読み込む際に一つ列が追加された状態となります。
データテーブル列を削除する方法
データテーブル列を削除する方法は、追加する方法と同様アクションとしては存在しません。
そこで、列を追加するときと同じようにExcel上で列を削除します。
データテーブルをExcelに展開するところまでは先ほどと同じ手順です。
Excel上で列を削除
「列の削除」には、何列目を削除したいかを記載します(1始まり)。上記の例では、3列目が削除されます。
まとめ
今回は、Power Automte Desktop(PAD)でデータテーブルに列を追加する方法と、列を削除する方法について解説しました。
この方法は、Microsoft公式が出している「データテーブルから列を削除する」という記事を参考にしました。
参考:Microsoft Power Automate データテーブルから列を削除する
公式が「Power Automate上ではデータテーブルの列を削除することはできないよ」と断言しているので、今回紹介した通り回避策を使うしかなさそうです。今後のアップデートでデータテーブルの行・列の削除アクションが追加されたら良いなと思っています。
なお、本記事では列に対する追加・削除について解説しましたが、行に対しても同様にExcel内で行の追加・削除をすることで対応できるかと思います。
コメント