こんにちは。アーティサン株式会社の小刀稱(ことね)です。
「Power AutomateでExcelデータをSharePointリストにインポートするために考えること」シリーズの第8回です。
本シリーズでは、私が実際にPower Automateを用いて、「ExcelをSharePointリストにインポートする」フローを作成していきます。
また、Power Automate作成の際に学んだ点や躓いた点を中心に紹介いたします。
Power Automateでどんな事ができるのか知りたい、実際の作成方法を知りたい、という方に向けた記事です。
前回は、Power Automateで動的にExcelデータのファイルID・テーブルIDを取得する方法についてお伝えしました。
第7回目の内容はこちらを参照ください。
Power AutomateでExcelデータをSharePointにインポートするために考えること(第7回)
今回は、動的に取得したExcelデータのファイルIDやテーブルIDを用いて、SharePointリストへインポートするようにフローを作り込んでいきます。
Power Automateフローの作り込み
前回のブログまでを経て作成したPower Automateフローを以下に貼り付けます。
第2回のブログにて作成したPower Automateの「表内に存在する行を一覧表示」アクションは、静的なExcelデータの取得を対象としていたため、
ファイル項目やテーブル項目に設定する値は、右端のアイコンをクリックすると表示される候補から選択していました。
しかし、今回はPower Automateで動的にExcelデータを取得するため、各項目に前回のブログで取得したファイルIDとテーブルIDをそれぞれ設定します。
また、Power Automateフローのトリガーも修正しましょう。
現在のPower Automateトリガーは、「選択したファイルの場合」となっています。
従来はSharePoint上に保存したExcelデータを選択し、Power Automateフローを起動していたために、本トリガーを使用していました。
しかし、Excelデータ保存後、都度フローを手動起動させるのは、手間が大きくなりますので、今回はSharePointにExcelデータが保存された際、自動的にPower Automateフローを起動するという流れにしたいと思います。
具体的には、Power Automateのトリガーを「SharePointコネクター」の「フォルダー内でファイルが作成または変更されたとき」に変更します。
これにより、SharePointのドキュメントライブラリ内にファイルが作成または変更された場合に、自動的にPower Automateのトリガーが起動されるようになりました。
Power Automateフローの実行
早速Power Automateフローを実行しましょう。
ドキュメントライブラリにtest.xlsxを保存します。
するとPower Automateフローが自動起動し、SharePointリストにデータが挿入されました。
Power Automateのトリガー条件
最後に、Power Automateのトリガー条件について説明します。
Power Automateのトリガー条件に関する公式ドキュメントは、以下を参考にしてください。
条件を追加してPower Automateのトリガーをカスタマイズする
実は今回一番お伝えしたい内容が、Power Automateのトリガー条件についてです。(笑)
今回変更したPower Automateのトリガーは、設定したドキュメントライブラリ内にどのようなファイルが作成・変更されても起動する仕組みです。
このままでは、test.xlsx以外のファイルが作成・変更された場合もPower Automateフローが起動してしまいます。
不要なPower Automateフローの起動を防ぐために、「test.xlsxが作成・変更された場合のみ、Power Automateフローを起動する」よう修正しましょう。
Power Automateのトリガーの条件を設定するには、トリガーの右端にある3点リーダー → 設定をクリックします。
その後、表示されたPower Automate設定画面の下部にある「トリガーの条件」に式を設定します。
Power Automateのトリガー条件で使用できる式は、以下を参考にしてください。
(以下サイトは、Microsoft公式ドキュメントではありませんが、なお、以下サイトは冒頭で紹介した(条件を追加してトリガーをカスタマイズする))で紹介されているサードパーティの投稿です。)
Microsoft Power Automate Flow Trigger Conditions
今回はequals()関数を用いて、「 作成・変更されたファイルが“text.xlsx”と一致する場合、フローが起動される」ように設定しました。
Power Automateのトリガーの条件で指定した「triggerOutputs()?[‘headers/x-ms-file-name’]」は、Power Automateトリガーアクションの出力結果のうち、作成・変更されたファイル名を示します。 (以下図のハイライト部分参照)
試しにドキュメントライブラリにtext.xlsx以外のファイルを保存してみてください。 Power Automateフローが起動されないことが確認出来ると思います。
本日はここまで!
今回までの連載で、Power Automateで動的なExcelデータを取得し、SharePointリストへインポートすることができるようになりました。
次回は、インポートする表データの行数が多い場合の挙動と、その際のPower Automateでの対処法についてお伝えします。
ここまで読んでいただき、ありがとうございました。
【このシリーズの過去回一覧】
-
【Power AutomateでExcelデータをSharePointにインポートするために考えること 第1回】
4つのシーンごとに手法を比較、その最適解とは? -
【Power AutomateでExcelデータをSharePointにインポートするために考えること 第2回】
フロー作成でエラー発生! -
【Power AutomateでExcelデータをSharePointにインポートするために考えること 第3回】
フロー実行時のエラー内容と対処方法 -
【Power AutomateでExcelデータをSharePointにインポートするために考えること 第4回】
タイムゾーン差異と対処法 -
【Power AutomateでExcelデータをSharePointにインポートするために考えること 第5回】
ExcelファイルIDを動的取得 -
【Power AutomateでExcelデータをSharePointにインポートするために考えること 第6回】
インポートするためのドライブIDを取得する方法 -
【Power AutomateでExcelデータをSharePointにインポートするために考えること 第7回】
ファイルIDとテーブルIDを動的取得 -
【Power AutomateでExcelデータをSharePointにインポートするために考えること 第8回】
トリガーの条件の指定方法 -
【Power AutomateでExcelをSharePointリストにインポートしたい時に考えること 第9回】
Excel表データの行数が多い場合の対処法 -
【Power AutomateでExcelをSharePointリストにインポートしたい時に考えること 第10回】
インポートがうまくいかない!原因と対処法は? -
【Power AutomateでExcelをSharePointリストにインポートしたい時に考えること 第11回】
煩雑なフローをアクションで可読性向上!
【こちらも合わせて読みたい】
小刀稱知哉
大分県出身(温泉大好き)、現在は東京都在住
1990年生まれ
30才でメーカーの技術営業からIT業界にジョブチェンジ!!!
趣味は読書
主にMicrosoftのローコード(SharePoint・Power Platform)に関するに関する営業活動や設計、開発などを担当しております!
持ってる資格はPL-200/PL-300/PL-400/PL-600/MS-700/AZ-104/AZ-305/SC-200