Power Automate 「テーブルの作成(Excel Online (Business))」アクション
「テーブルの作成(Excel Online (Business))」は
Excelにデータ行のない(項目行だけ)のテーブルを追加するアクションです。
この記事では、その使い方と新規作成したテーブルに行を追加する方法を紹介します。
利用方法
コネクタ「標準」より「Excel Online (Business)」を選択します。
Microsoft365のログイン先が設定されていない場合はログイン情報を設定する必要があります。


「アクション」より「テーブルの作成」を選択します。


「テーブルの作成」ステップが追加されるのでパラメーターを設定します。


| 項目 | 説明 |
|---|---|
| 場所 | 接続可能なOneDriveとSharePointの一覧が表示されるので その中からテーブルを作成するファイルのある場所を選択。 |
| ドキュメントライブラリ | OneDriveの場合OneDrive、SharePointの場合、ドキュメントを選択 |
| ファイル | 右のディレクトリアイコンのピッカーでファイルを選択。 ファイルパスに見えますが、表示だけで中身はIDです。 指定ファイルを削除してから、同名ファイルを作成しても別として扱われてしまいます。(再指定が必要) |
| 表の範囲 | Excelのセル指定と同様の形式でシート名とセルを指定します。 例えな次のように指定します。 シート2!B2:D9 |
| テーブル名 | 追加するテーブルの名前を入力します。 |
| キー列 | 追加するテーブルの項目をカンマ区切りで入力します。 例では「コード」、「名前」、「価格」を下記のように指定しています。 コード,名前,価格 |
今回の例でフローを実行すると「追加テーブル」がシート2のB1以降に追加されます。


既に同名のテーブルがある場合、エラーとなります。
エラーすると途中でフローが停止してしまうため
それを避けたい場合は「テーブルの取得」と「条件」で
追加対象が存在するかを確認してから作成するか、
スコープで例外処理(エラー処理)を行う必要があります。
作成したテーブルにデータ行を追加
アクションで新規作成したテーブルにデータを追加するには
「表に行を追加」を利用しますが手順が特殊です。
「場所」、「ドキュメント ライブラリ」、「ファイル」までは通常通りですが、
テーブルの選択肢には追加テーブルは出てこないため「カスタム値の入力」を選択します。


動的なコンテンツが表示されるため「テーブルの作成」の「name」を指定します。
(nameですが、中身はIDです。今後修正される可能性は高いです)


通常の利用方法ではテーブルの項目ごとに入力欄が出ますが、
この方法ではBody欄のみが表示されます。(Bodyではなく行と表示される可能性もあります)
ここにはJSON形式で1行のデータを指定します。
JSONの仕様は多いですが、ここで必要な事項は以下の通りです。
- 全体を{}で囲む。
- 一つのセルを項目名:データの形式で記述。項目名とデータは"で囲む。
- セルとセルの間は,で区切る(最後の項目は不要)
例えばこのような行を追加する場合は、このようなJSONになります。
| コード | 名前 | 価格 |
|---|---|---|
| B-001 | しゃけ | 120 |
{
"コード": "B-001",
"名前": "しゃけ",
"価格": "120"
}


このフローで新規テーブルの作成と追加をした結果です。


「表に行を追加」ではテーブルのIDを指定します。
このIDは見た目は名前ですが作成されるたびに中身が変わります。
(IDのない作成前のテーブルは指定不可)
よって前述のように動的なコンテンツを使わないと
テーブルの指定でエラーするのでデータを追加できません。
当サイトの情報を再編集した実務リファレンス
ネット検索では解決しづらい「日付の変換」や「複雑なデータ処理」など、当サイトで公開している技術情報を電子書籍として読みやすく再編集しました。
400以上のコネクタや関数の仕様を網羅的に解説しており、困ったときにすぐ引ける「辞書」として活用いただけます。
現場でのトラブルシューティングや、手元での確認用に最適です。Kindle Unlimited対象(読み放題)です。


[書籍リンク:Power Automate (Web版)完全版 基本から実用まで]