はじめに
Power Platform でアプリを作っていると「このリストにはどんな列があるんだっけ?」「この列の内部列名はなんだっけ?」と確認したくなることがあります。特にチームで開発や運用を行う場合は、利用しているデータソースや列情報を設計書として残しておくと非常に便利です。
本稿では、SharePoint Lists の列情報(表示名・内部名・列の説明)を Power Automate で取得し、Excel に一覧出力するフロー を紹介します。
この記事でできること
- SharePoint Lists の列情報を取得する
- 列の表示名、内部名、説明を一覧化する
完成イメージ
本記事で紹介するフローを実行すると、SharePoint Lists の列情報を下図のような形式で Excel に出力できます。
これにより手入力で列情報を Excel に転記する作業が不要になるため、設計書の作成を効率化できます。
フローの概要
フローの概要は下図の通りです。
ボタンを押したら
- SharePoint REST API で指定のリストの列情報を取得
- 1 の情報を Excel に出力
を行います。
それぞれ説明します。
実装方法
事前準備
Power Automate にはブックを新規作成するアクションがありません。そのため、SharePoint か OneDrive for Business にフローで利用する 空の Excel ファイル を作成しておきます。
列情報の取得
列情報は SharePoint REST API から取得します。取得には SharePoint コネクタの SharePoint に HTTP 要求を送信しますアクションを利用します。
-
SharePoint に HTTP 要求を送信しますアクションを追加します
Excel への出力に必要な情報だけを取得するために Uri の fields?$select 以降で出力項目を Title(列の表示名)・InternalName(列の内部名)・Description(列の説明)・Hidden(列の表示/非表示)・FromBaseType(自動生成されるシステム列かどうか)だけに絞っています。
_api/web/lists/GetByTitle('リストの名前')/fields?$select=Title,InternalName,Description,Hidden,FromBaseType -
データ操作 > JSON の解析 アクションを追加します
JSON の解析の Schema はこちらです
{ "type": "object", "properties": { "d": { "type": "object", "properties": { "results": { "type": "array", "items": { "type": "object", "properties": { "__metadata": { "type": "object", "properties": { "id": { "type": "string" }, "uri": { "type": "string" }, "type": { "type": "string" } } }, "Description": { "type": "string" }, "FromBaseType": { "type": "boolean" }, "Hidden": { "type": "boolean" }, "InternalName": { "type": "string" }, "Title": { "type": "string" } }, "required": [ "__metadata", "Description", "FromBaseType", "Hidden", "InternalName", "Title" ] } } } } } } -
データ操作 > アレイのフィルター処理アクションを追加します
Filter Query は詳細モードで以下のように And 条件を入れています。Hidden と FromBaseType が両方 False の列だけにすることで SharePoint Lists に自動生成されるシステム列を排除し、自分で作ったカスタム列だけ を抽出しています。
and( equals(item()?['Hidden'], false), equals(item()?['FromBaseType'], false) )
これで必要な列情報だけに絞り込むことができました。次は Excel に転記していきます。











