技術情報ブログ
Power Platform
2022.11.09

Power BI:SharePointリストの個人(ユーザー)列の情報を表示する方法

Power BI:SharePointリストの個人(ユーザー)列の情報を表示する方法
小刀稱知哉

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

SharePointリストの情報をPower BIで表示することは多いと思います。

しかし、SharePointリストで個人(ユーザー)列を使っている場合、Power BIにそのリストをインポートするだけでは、ユーザー情報を表示する事はできません。

そこで今回は、Power BIでSharePointリストの個人(ユーザー)列の情報を表示する方法について紹介します。
Power BI初心者の方に向けた内容となっています。

 

前提

※注意※

今回の内容は、コネクタの実装が1.0となっていることが前提です。

コネクタの実装の詳細に関しては、以下URLをご参照ください。

SharePoint Online リスト v2.0 (ベータ) に接続する

SharePoint Online リスト v2.0 (ベータ) ・コネクタの実装
コネクタの実装

 

SharePointリスト

列名

データ型

備考

案件名

1行テキスト

元々は「タイトル」列

営業担当者

個人(ユーザー)

複数選択は許可していない

SharePointリストの構造
SharePointリストの構造

 

Power BIでやりたいこと

今回やりたいこととしては、「Power BIで各営業担当ごとの対応案件数を表示」することです。

(表示内容のポイントとしては、ユーザー名を表示しているという部分です。)

Power BIでやりたいこと
Power BIでやりたいこと

 

問題

上記やりたいことを実現するため、Power BIで「案件リスト」を読み込んでみました。

Power BIでデータの内容を表示したところ、ユーザーに関する情報(ユーザー名など)が見当たらず、「OData_営業担当Id」があるのみでした。
これでは、Power BIでユーザー名を表示することができません。

OData_営業担当Id
OData_営業担当Id
Power BIでユーザー名が表示できない
Power BIでユーザー名が表示できない

 

対応策(Power BIでSharePointリストの個人(ユーザー)列の情報を表示)

Power BIでSharePointリストの個人(ユーザー)列の情報を表示させるためには、以下の手順を行います。

  • ユーザー情報リストを読み込む

  • 対応するSharePointリストとリレーションシップを作成

 

ユーザー情報リストを読み込む

まず、SharePointリストの「ユーザー情報リスト」を読み込みます。

「ユーザー情報リスト」とは、対象のサイトコレクションに関係するユーザー一覧が保存されているリストです。
サイトコレクションなどにアクセス権を付与した場合や、SharePointリストの個人(ユーザー)列にユーザーを追加した場合などに、 「ユーザー情報リスト」にユーザー情報が追加されます。

「ユーザー情報リスト」を読み込む手順は以下です。

  • Power BIのデータの取得詳細をクリック

  • SharePoint Online リスト Online接続をクリック

  • サイト URLに「案件リスト」と同様のサイトURLを入力し、OKをクリック

    サイト URL
    サイト URL
  • 「ユーザー情報リスト」を選択し、読み込みをクリック

    ユーザー情報リストの読み込み
    ユーザー情報リストの読み込み

 

対応するSharePointリストとリレーションシップを作成

続いて、読み込んだ「ユーザー情報リスト」とユーザー名を表示したいSharePointリスト(今回は「案件リスト」)のリレーションシップを作成します。

リレーションシップの設定としては、「案件リスト」の「OData_営業担当Id」列と「ユーザー情報リスト」の「Id」列を「多対一」として連携します。

リレーションシップの設定
リレーションシップの設定

上記設定で、「案件リスト」の「営業担当」とユーザー情報リストを連携しました。

よって、営業担当の各情報(例:ユーザー名やメールアドレスなど)をPower BIのグラフ上で表示することができるようになります。

 

結果

それでは、実際にグラフを作成してみましょう。

X軸に「ユーザー情報リスト」の「Title」列(=ユーザーの表示名)、Y軸に「案件リスト」の「Id」列を設定しました。

グラフの作成
グラフの作成

無事、ユーザー名を表示させることができました!

 

補足:LOOKUPVALUE関数でも対応可能

前述した手順にてやりたいことは実装できますが、リレーションを作成せず、LOOKUPVALUE関数を用いることで対応することも可能です。
(正直この方法を用いるメリットは思い当たらないですが、自分の備忘録として記載しています(笑))

「ユーザー情報リスト」を読み込むところまでは同様です。
その後、「案件リスト」に新しい列を追加します。(今回は「Name」列を追加しました。)

追加する列の設定としては、以下のとおりです。

Name = LOOKUPVALUE('ユーザー情報リスト'[Title],'ユーザー情報リスト'[Id], '案件リスト'[OData_営業担当Id])
LOOKUPVALUE関数
LOOKUPVALUE関数

「ユーザー情報リスト」の「Id」列と、「案件リスト」の「OData_営業担当Id」列が一致する行を取得し、取得した行の「Title」列を表示させるという実装です。
(ExcelのVLOOKUP/XLOOKUP関数のようなイメージ)

 

おわりに

今回は、Power BIでSharePointリストの個人(ユーザー)列の情報を表示する方法について紹介しました。

今回ご紹介した方法は、個人(ユーザー)列だけでなく、参照列の場合も同様の手順にて対応可能です。

ぜひお試しください!

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

小刀稱知哉

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

1990年生まれ

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

趣味は読書

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

持ってる資格はPL-200/PL-300/PL-400/MS-700/AZ-104/AZ-305

シェアする
記事カテゴリ
最新記事
2024.06.05

【2024年6月更新】Power Automate 設計・構築時のTips集

2024.05.15

非エンジニア【(元)自治体職員】がローコード開発をして気が付いたこと コーディング規約とPower Platformプレミアムサンプルアプリ集

2024.05.01

Power Apps・Power Automateの勉強方法(2)

2024.04.17

Power Apps・Power Automateの勉強方法(1)

2024.04.03

非エンジニア【(元)自治体職員】が半年間ローコード開発をしてみたら

モデル駆動型アプリPower AppsPower PlatformSharePointExcelPower AutomateC#attributevalidationローコードAngularAccessInfoPathMatTableAngular Materialデータ構造SortByColumns関数TypeScriptHTMLEF CoreマイグレーションFramework CoreAttribute directivesO/Rマッパーazure sql databaseCase式HTTP RequestCSSxUnit.Net Core 3.1VSCode.Net Core Test ExplorerDataverse for Teamsitem関数Google MapsMarker ClustererRANK()関数Dynamics 365 SalesMicrosoft TranslatorマーカークラスタリングライブラリtailwindcssマルチテナントドロップダウンメニューBreakpointObserverメディアクエリスマホPCレスポンシブ入門初心者中級者キャンバスアプリDatePickerDropdownviewビューアクセス制限承認リマインドSetForAllUpdateContextロードマップ技術It情報技術メッセージIDメールfirst()関数nest入れ子動的リストcollectionコレクション複数の添付ファイル承認フローformエクスポートインポートカスタマイズcomponentダイアログコンポーネントdialogTips新機能変数検索Microsoft 365グループセキュリティグループ送信元メールの送信差出人インスタントクラウドフロー自動化したクラウドフロー委任VBAエラーエクセルerror復元restorePower BI個人列ユーザー列SharePoint Onlineリスト非表示アプリ[市民開発者構築自動化したクラウド フローフローの種類インスタント クラウド フロースケジュール済みクラウド フローレスポンシブ レイアウトresponsive layoutデータ行の制限引き継ぎ退職所有者を変更異動LoopMicrosoftdesignJSONデザインtemplateテンプレート運用選択肢列参照列ChatGPTOpenAIオープンAIチャットGPTgalleryギャラリースクロールコンテナショートカットキーshortcut keyconcat関数文字制限フロー実行開発環境環境本番環境ライセンス環境構築手順pipelineCI/CDパイプラインDevOpsMicrosoft 365簡易在庫管理時間外通知ファイルフィルター クエリドキュメント ライブラリfilter querysortソートmultiple item複数項目シェアポイント便利機能カレンダーCalendarTeamsローコード開発非エンジニア体験談勉強内製化
PageTop
ページトップに戻る