Power Automate 「行の取得(Excel Online (Business))」アクション

2024年2月29日

English version.

「行の追加(Excel Online (Business))」はExcelのテーブルの行の内容を取得するアクションです。

利用方法

まず行を取得するExcelファイルを用意します。

追加する場所はテーブルにしておく必要があります。

今回の例ではコード、名前、価格の項目を持ち、

テーブル名が「商品テーブル」のファイルをサンプルとして用意します。

次にフローにステップを追加します。

コネクタ「標準」より「Excel Online (Business)」を選択します。

OneDriveの接続先が設定されていない場合はログイン情報を設定する必要があります。

「アクション」より「行の取得」を選択します。

「行の削除」ステップが追加されるのでパラメーターを設定します。

項目説明
場所接続可能なOneDriveとSharePointの一覧が表示されるので
その中から行を取得するファイルのある場所を選択。
ドキュメントライブラリOneDriveの場合OneDrive、SharePointの場合、ドキュメントを選択
ファイル右のディレクトリアイコンのピッカーでファイルを選択。
ファイルパスに見えますが、表示だけで中身はIDです。
指定ファイルを削除してから、同名ファイルを作成しても別として扱われてしまいます。(再指定が必要)
テーブル「ファイル」の中に存在するテーブルの一覧が表示されるので
行の取得対象のテーブルを選択します。
こちらも名前でなくIDのため一度テーブルを削除して
同名テーブルを作成しても別として扱われます。(再指定が必要)
キー列テーブルを選択すると列の一覧が表示されるので
取得対象を検索する列を指定します。
キー値取得するキー列の値を指定します。

日時のセルの場合、シリアル値で扱われます。
(日付指定では一致しない)

そのためExcelブック側にTEXT関数でキー値用の文字列のセルを作るか、
(こちらの方が無難)
シリアル値を式で算出する必要があります。
たとえば2021年11月11日を削除する場合、
↓のような式で算出したものをキー値に設定します。
add(div(sub(ticks(‘2021-11-11’),ticks(‘1900-1-1’)),864000000000),2)

取得結果はその後のステップで動的なコンテンツとして使用可能です。

今回の例ではキー列がA-001の2行目が取得対象となります。

4行目もA-001ですが、最初に一致する1行のみが対象となります。

コードにはA-001、名前はさば、価格は5000が格納されます。

(この名前はExcelから自動抽出されます)

条件に一致するものがない場合、エラーとなります。

エラーすると途中でフローが停止してしまうため

それを避けたい場合は「表内に存在する行を一覧表示」と「条件」で

削除対象が存在するかを確認してから削除するか、

スコープで例外処理(エラー処理)を行う必要があります。

複数行の取得

このアクションで取得できるのは1行のデータだけです。

複数行を取得したい場合は取得する数だけ設置する必要があります。

あるいは「表内に存在する行を一覧表示」で全行を取得して

Apply to each」で全行を繰り返し、その中で「条件」で取得条件を指定します。

そして「条件」に合致した場合に

表内に存在する行を一覧表示」の動的なコンテンツからデータを取得します。

複数条件による取得

このアクションでは取得条件がキー値とキー列の指定のみです。

複数条件を指定するには「表内に存在する行を一覧表示」で全行を取得して

Apply to each」で全行を繰り返し、その中で「条件」で取得のための複数条件を指定します。

Power Automateを効率的に習得したい方へ

当サイトの情報を電子書籍用に読み易く整理したコンテンツを

買い切り950円またはKindle Unlimited (読み放題) で提供中です。

Word-A4サイズ:1500ページの情報量で

(実際のページ数はデバイスで変わります)

基本的な使い方から各トリガー/アクションの詳細な使い方、

頻出テクニック、実用例を紹介。(目次

体系的に学びたい方は是非ご検討ください。

アップデートなどの更新事項があれば随時反映しています。(更新履歴

なお購入後に最新版をダウンロードするには

Amazonへの問い合わせが必要です。

関連記事

「Excel Online (Business)」の記事一覧

受信メールに添付されたExcelファイルのテーブルから行の取得を行う(コメント回答用)