技術情報ブログ
Power Platform
2021.08.11

Power AutomateでExcelデータをSharePointにインポートするために考えること(第5回)

こんにちは。アーティサン株式会社の小刀稱(ことね)です。

「Power AutomateでExcelをSharePointリストにインポートしたい時に考えること」シリーズの第5回です。

本シリーズでは、私が実際にPower Automateを用いて、「ExcelをSharePointリストにインポートする」フローを作成していきます。 また、作成の際に学んだ点や躓いた点を中心に紹介いたします。

Power Automateでどんな事ができるのか知りたい、実際の作成方法を知りたい、という方に向けた記事です。
前回までで、Power Automateを用いて「ExcelをSharePointリストにインポートする」最低限の機能を作成しました。 以降では、作成したフローを実際の運用にも活用できるよう機能を向上させていきたいと思います。

第4回目の内容はこちらを参照ください。

Power AutomateでExcelデータをSharePointにインポートするために考えること(第4回)

今回は、「動的にExcelデータを取得する」方法についてお伝えしていきます。

(本シリーズの中で一番難易度が高い内容です!)

 

前回までで作成したフローは、事前にSharePointに保存したExcelデータ(=静的なExcelデータ)がある状態でPower Automateを起動していました。

このような場合、取得したいExcelのファイル名(正確にはファイルID)テーブル名(正確にはテーブルID)は一覧から選択するだけで簡単に設定できます。

しかし実際の運用では、「メールに添付されたExcelデータを自動的にインポートする」や、「SharePointにExcelデータが保存された際、自動的にインポートする」という要望が多いです。

ファイルIDやテーブルIDはSharePointに保存された段階で初めて値が設定されるため、 上記要望のように、「フロー内でSharePointにExcelデータを保存し、そのデータを利用する」という フローを作成する場合、フロー内の設定項目として、事前にファイルIDやテーブルIDを設定することができません。

このような場合は、フローの中で動的にファイルIDやテーブルIDを取得する必要があります。

今回は、そのための仕掛けを作っていきます。

動的なExcelデータの取得

 

Excelデータの動的な取得(ファイルID編)

Microsoft Graph REST API を介した SharePoint REST 操作

具体的には、「SharePointにHTTP要求を送信します」アクションを用いて、ExcelデータのファイルIDを動的に取得していきます。

流れとしては、以下の手順です。 (いずれも「SharePointにHTTP要求を送信します」アクションを用います。)

 Excelデータが保存されたSharePointドキュメントライブラリのドライブIDを取得

 ExcelデータのファイルIDを取得

 

Excelデータが保存されたSharePointドキュメントライブラリのドライブIDを取得

ドライブIDを取得するには、以下の手順を実施していきます。

  • ドライブ一覧を取得
  • ドライブ一覧から今回使用するドライブ情報をドライブ名で検索
  • 対象のドライブIDを取得

 

(1)ドライブ一覧を取得

SharePointにHTTP要求を送信しますアクションを選択し、以下の項目を入力します。

サイトのアドレス:保存したSharePointのサイト

方法
GET
URL
_api/v2.0/drives/
ヘッダー
accept application/json

 

ドライブID取得のための設定

上記を一度実行し、実行履歴から「出力」のbody部分を見てみましょう。

ドライブIDの取得

 

(2)ドライブ一覧から今回使用するドライブ情報をドライブ名で検索

上記の手順でドライブ一覧を取得することができました。

続いて対象のドキュメントライブラリ(=Excelファイルの保存場所)の「id」値(ハイライト部分)を抽出していきます。

まずは、「JSONの解析」アクションを用います。 本アクションは絶対に必要なものではありませんが、このアクションを入れることで、後続のアクションで必要な式を自分で作成する手間を省く事ができるため、利用することをオススメします。

(この説明では分かりづらいと思いますので、詳細は後ほどお伝えします。)

では、JSONの解析アクションを作成します。

JSONの解析

コンテンツ項目にはSharePointにHTTP要求を送信しますアクションのbodyを設定します。

またスキーマ項目については、「サンプルから作成」をクリックし、 body内の値({から} まで)の内容をコピー&ペーストすることで完了です。

続いて、「アレイのフィルター処理」アクションを追加します。

このアクションでは、nameExcelファイルの保存場所である項目を検索し、その情報を抽出しています。

アレイのフィルター処理

ここまでの結果を見てみましょう。

結果

ドライブ一覧から、[Excelファイルの保存場所]に関する情報のみ抽出することができました!

 

「JSONの解析」アクションの必要性について補足します。

アレイのフィルター処理アクションで値の選択をクリックすると、使用するコンテンツの候補がでてきます。

JSONの解析アクションを事前に追加している場合は、ここに今回使用するnameが自動的に表示されます。

アレイのフィルター処理-2

JSONの解析アクションを追加していない場合、こちらのname項目が自動的に表示されないため、具体的な式を自身で作成する必要があります。

アレイのフィルター処理-3

「JSON」の解析アクションを用いると、自身で式を作成する手間が不要となるためオススメです。

 

少し長くなってしまいましたので、今回はここまでとさせていただきます。

次回は、今回の続きを作成し、ドライブID・ファイルID・テーブルIDを動的に取得する方法についてお伝えしていきます!

ここまで読んでいただき、ありがとうございました。

Power Platform(SharePoint・Power Apps・Power Automate)に関する営業活動や設計、開発などを担当:小刀稱知哉

小刀稱知哉

大分県出身(温泉大好き♥♥)、現在は東京都在住

1990年4月9日生まれ

30才にしてメーカーの技術営業からIT業界にジョブチェンジ!!!

趣味は読書

Power Platform(SharePoint・Power Apps・Power Automate)に関する営業活動や設計、開発などを担当しております!

Twitter
facebook
シェアする
記事カテゴリ
最新記事
Power PlatformPower Apps
2021.09.17

Power Apps で保守性を高めつつギャラリーのタブ切り替えを実装する

Power PlatformPower AutomateSharePointExcel
2021.09.15

Power AutomateでExcelをSharePointリストにインポートしたい時に考えること(第10回)

Power PlatformPower AutomateSharePointExcel
2021.09.10

Power AutomateでExcelをSharePointリストにインポートしたい時に考えること(第9回)

Power PlatformPower Automate
2021.09.08

Power Automate・Dataverse for Teams:選択肢列や参照列の表示名を取得する

Power PlatformPower AutomateSharePointExcel
2021.09.03

Power AutomateでExcelデータをSharePointにインポートするために考えること(第8回)

人気記事ランキング
1
Power PlatformPower Apps
2020.10.02

世界に広がる「モデル駆動型アプリ」のココがスゴイ!【第1回】

2
Power PlatformPower AutomateSharePointExcel
2021.07.14

Power AutomateでExcelデータをSharePointにインポートするために考えること(第2回)

3
Power PlatformPower AutomateSharePointExcel
2021.06.23

Power AutomateでExcelデータをSharePointにインポートするために考えること(第1回)

4
バス予報
2020.10.15

独立行政法人日本貿易振興機構(ジェトロ)による「日・ASEANにおけるアジアDX促進事業」の「マレーシア渋滞緩和を目指したサイバージャヤスマートシティバス 実証プロジェクト」採択について その①

5
バス予報
2020.10.16

独立行政法人日本貿易振興機構(ジェトロ)による「日・ASEANにおけるアジアDX促進事業」の「マレーシア渋滞緩和を目指したサイバージャヤスマートシティバス 実証プロジェクト」採択について その②

PageTop
ページトップに戻る