PADのデータテーブルで列を追加・削除する方法【Power Automate Desktop】

Power Automate Desktop

今回は、Power Automte Desktop(PAD)でデータテーブルに列を追加する方法と、列を削除する方法についてそれぞれ解説します。

データテーブル列を追加するアクションは存在しない

まず最初に、PADのデータテーブルに追加するというアクションは存在しません。

何で行追加・列追加がないのでしょう。とても不便です。。。

回避策としてExcelを使う

そのため、以下の手順で実現します。

要は、PAD上でデータテーブルに列追加ができないから、Excelに転記して、Excel上で列追加したあとにそれをPADに戻す、ということです。

データテーブルに列を追加する方法(回避策)

では、実際のフローで確認していきましょう。

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

データテーブルの作成

今回は、Webサイト上のテーブルをデータテーブルに取得して、そのデータテーブルに列追加をしたいと思います。取得するWebサイトは「2023年に学習をおすすめしたい人気プログラミング言語ランキング」とします。

今回の例ではWebサイトの内容をデータテーブルに格納していますが、

「新しい データテーブルを作成する」にて新規にデータテーブルを作成する場合でも、後述の方法で列の追加が可能です。

フローは以下のようになっており、

実行するとDataFromWebPageという変数には、以下のようにテーブルの情報がデータテーブルとして取得されます。

Excel内にデータテーブルの内容を転記する

データテーブルの内容を、空のExcelシートに転記します。

使用するアクション

Excelの起動

設定内容は何も変更しないでOKです。

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

Excelに、データテーブルの内容を書き込みます。

使用するアクション

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

「書き込む値」にはデータテーブル変数を、「列」「行」はいずれも1を設定します。これで、A1セルを起点にデータテーブルの内容が転記されます。

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

Excelの表に、列を挿入します。

使用するアクション

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

「列」には、何列目に列を挿入したいかを設定します(1始まり)。

今回は3を指定したので、3列目に列が挿入されました。

ExcelからPADにデータを戻す

最後に、列を追加したExcelをPADに戻します。

使用するアクション

Excel ワークシートから読み取る

「取得」は、「ワークシートに含まれる使用可能なすべての値」を選択します。また、一行目にカラム名が存在する場合は、詳細を開き「範囲の最初に列名が含まれています」を選択するのを忘れないように注意してください。

これで、Excelの内容がごっそり取得され、新しいデータテーブル変数「ExcelData」に格納されます。

加工後のデータテーブルの中身を確認してみる

では、生成されたデータテーブルの中身を確認してみましょう。

新しく作成された「ExcelData」というデータテーブル変数には、列が追加された状態となっていることが確認できました。

列の最後に列を追加する場合

データテーブルの最後の列に列を追加したい場合は、上記の方法ではうまくいきませんでした。

そこで、以下の方法で対応します。

Excelシートの最初の空の列を取得する

使用するアクション

Excel ワークシートから最初の空の列や行を取得

何も変更しないでOKです。

カラムを適当につける

使用するアクション

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

「書き込む値」は、追加する列のカラム名となります。

「列」には、先ほど取得したFirstFreeColumn、行には1を設定します。

これで、最後の列が空の列とみなされなくなり、データテーブルとして読み込む際に一つ列が追加された状態となります。

データテーブル列を削除する方法

データテーブル列を削除する方法は、追加する方法と同様アクションとしては存在しません。

そこで、列を追加するときと同じようにExcel上で列を削除します。

データテーブルをExcelに展開するところまでは先ほどと同じ手順です。

Excel上で列を削除

使用するアクション

Excel ワークシートから列を削除

「列の削除」には、何列目を削除したいかを記載します(1始まり)。上記の例では、3列目が削除されます。

まとめ

今回は、Power Automte Desktop(PAD)でデータテーブルに列を追加する方法と、列を削除する方法について解説しました。

この方法は、Microsoft公式が出している「データテーブルから列を削除する」という記事を参考にしました。

参考:Microsoft Power Automate データテーブルから列を削除する

公式が「Power Automate上ではデータテーブルの列を削除することはできないよ」と断言しているので、今回紹介した通り回避策を使うしかなさそうです。今後のアップデートでデータテーブルの行・列の削除アクションが追加されたら良いなと思っています。

なお、本記事では列に対する追加・削除について解説しましたが、行に対しても同様にExcel内で行の追加・削除をすることで対応できるかと思います。

chaso

文系出身、数字が苦手な平凡主婦。塾講師、大手企業SE、不動産事務、Webライター、QAエンジニアを経て現在RPAエンジニアとして働いています。機械音痴だけど効率化や自動化をこよなく愛しています!お仕事の依頼・ご相談は問い合わせよりお願いいたします♪

chasoをフォローする

コメント

タイトルとURLをコピーしました