PowerApps SharePoint連携で迷わない? 作り方と注意点

PowerApps SharePoint連携で迷わない? 作り方と注意点のアイキャッチ

SharePointリストをPower Appsでアプリ化したいけれど、「リストから作るのか」「フォームをカスタマイズするのか」で迷うことがありますよね。動く画面はすぐ作れても、あとから委任権限でつまずくと手戻りが大きいです。

PowerApps SharePoint連携は、小さく始めやすいのが強みです。ただし、最初にSharePointリストの列設計、データ件数、入力フォームの使い方を決めておくと、あとから直しやすい業務アプリになります。

目次

PowerApps SharePoint連携でできること

Businessman in elegant suit using tablet during office meeting, focusing on touchscreen technology.

PowerApps SharePoint連携には、大きく3つの使い方があります。

SharePointリストからアプリを作る、リストフォームをカスタマイズする、既存アプリからSharePointをデータソースにする、という分け方で見ると判断しやすいです。

SharePointリストからキャンバスアプリを作れる

SharePointリストをもとに、一覧、詳細、編集の画面を持つキャンバスアプリを作れます。Microsoft Learnでも、リストからキャンバスアプリを作成する手順が用意されています。

Power Apps supports lists, not template-based lists.

Create a canvas app from a list

つまり、まず通常リストをデータの置き場所として作り、そこからアプリ画面を起こす流れです。Excel管理を卒業したい部署では、この形が一番入りやすいです。

ただし、テンプレートベースのリストをそのまま期待すると使えない場面があります。最初はシンプルなカスタムリストで、タイトル、ステータス、担当者、期限などを決めてから作るのが安全です。

SharePointフォームをPower Appsでカスタマイズできる

SharePointやMicrosoft Listsの標準フォームを、Power Appsでカスタマイズする方法もあります。これは「SharePointリストのフォームだけを少し使いやすくしたい」ときに向いています。

たとえば、申請リストの入力画面だけを整えたいなら、フォームカスタマイズで十分なことがあります。一覧画面や検索画面まで自由に作りたいなら、キャンバスアプリとして作る方が向いています。

選び方向いているケース注意点
フォームカスタマイズ既存リストの入力画面を整える画面全体の自由度は低め
キャンバスアプリ一覧、検索、詳細画面を作り込む設計する範囲が広い
既存アプリに接続すでに画面があるデータ型と委任確認が必要

どれが正解というより、作りたい範囲で選ぶのがポイントです。

既存アプリからSharePointをデータソースにできる

すでにPower Appsで画面を作っている場合でも、SharePointリストをデータソースとして追加できます。キャンバスアプリから接続を追加し、ギャラリーやフォームの ItemsDataSource に指定する流れです。

オンプレミスSharePointの場合は、データゲートウェイを使う構成もあります。ただ、社内ネットワークや認証が絡むため、最初はSharePoint Onlineのリストで試す方が早いです。

  • SharePointリストをデータソースにする
  • ギャラリーで一覧表示する
  • Edit formで編集する
  • PatchやSubmitFormで保存する

既存アプリに後付けする場合は、先に列名を確認してください。表示だけなら簡単でも、保存や検索でつまずくことがあるからです。

PowerApps SharePoint連携の3パターン

SharePointリストをアプリ化する基本手順

Close-up of a hand writing on a digital checklist using a stylus on a tablet, enhancing productivity.

SharePointリストからPower Appsを作るときは、いきなり画面を作るより、リスト設計を先に整える方が楽です。ここでは、最初に決める列、接続、表示、保存の流れを順番に見ていきます。

リスト列を先に整理する

Power Appsの画面はあとから直せますが、SharePointリストの列設計は後で効いてきます。特に検索、絞り込み、権限、入力チェックで使う列は、最初に目的を決めておきたいです。

最低限、次のような列を整理します。

  1. 一覧で見せる列を決める
  2. 検索や絞り込みに使う列を決める
  3. 必須入力にする列を決める
  4. 選択肢列やユーザー列の扱いを決める
  5. 添付ファイルを使うか決める

「とりあえず全部テキスト」は楽ですが、あとから集計しにくいアプリになりがちです。ステータスは選択肢、担当者はユーザー列、期限は日付のように、意味に合う型を選びます。

SharePoint接続を追加してギャラリーに表示する

アプリ側では、SharePointコネクタでサイトを選び、対象リストをデータソースとして追加します。一覧表示では、まずギャラリーの Items にリストを指定します。

SortByColumns(
    Filter(
        Requests,
        StartsWith(Title, txtSearchKeyword.Text)
    ),
    "Created",
    SortOrder.Descending
)

この例では、Requests リストをタイトルで前方一致検索し、作成日で並べています。SharePointでは、StartsWithFilterをうまく使うと、委任しやすい式に寄せられます。

補足

最初は「表示できた」で終わらせず、検索、並び替え、絞り込みまで一緒に試すと、後の委任警告に気づきやすいです。

フォーム送信はSubmitFormかPatchで考える

SharePointリストへの保存は、Edit formを使うなら SubmitForm がわかりやすいです。フォームを使わず、ボタンの OnSelect から直接保存したい場合は Patch を使います。

SubmitForm(frmRequestEdit)
Patch(
    Requests,
    Defaults(Requests),
    {
        Title: txtTitle.Text,
        Status: drpStatus.Selected.Value
    }
)

初心者には、まずEdit formSubmitForm の組み合わせがおすすめです。列が増えてもDataCardで管理しやすく、添付ファイルなども扱いやすいからです。

一方で、独自の入力画面を作り込みたい場合は Patch が便利です。ただし、複雑な列では式が長くなりやすいので、最初から無理にPatchへ寄せなくてOKです。

SharePointリストからPower Appsを作る流れ

SharePoint列とフォームでつまずきやすいところ

A close-up of a person holding a pen reviewing a financial document with cash visible, ideal for business themes.

SharePointリストはPower Appsと相性が良いですが、列の型によって式の書き方が変わります。ここでは、選択肢列、ユーザー列、添付ファイル、入力チェックのつまずきどころを整理します。

選択肢列とユーザー列は中身の構造を見る

SharePointの選択肢列やユーザー列は、単なる文字列ではありません。Power Apps側では、Selected.ValueDisplayNameEmail のように、中の値を指定して使う場面があります。

列の種類よく使う参照注意点
選択肢列Status.Value表示値と保存値を混同しやすい
ユーザー列AssignedTo.DisplayNameメールで比較した方が安定することがある
参照列Customer.Valueリスト間の関係が増えると式が読みにくい
日付列DueDateタイムゾーンや空欄に注意

このあたりは、画面で表示できても保存や比較でエラーになりやすいです。ギャラリーで表示するだけでなく、編集フォームと保存まで一度通して確認してください。

添付ファイルはフォームとの相性で考える

SharePointリストの添付ファイルは便利ですが、Power Appsでは扱い方にクセがあります。標準のEdit formなら添付ファイルカードを使いやすい一方で、完全に独自の入力画面にすると難しくなります。

注意

添付ファイルを使うアプリでは、最初からフォーム中心で作るか、添付ファイル処理だけ別設計にするかを決めておくと安全です。

画像やファイルが主役の業務なら、SharePointリストだけでなく、ドキュメントライブラリやPower Automateとの組み合わせも考えます。

単純な台帳ならSharePointリスト、ファイル管理が中心なら保存場所を分ける方が運用しやすいです。

入力チェックはSharePointとPower Appsの両方で見る

入力チェックは、SharePoint側の必須列とPower Apps側のバリデーションの両方で考えます。SharePoint側だけに頼ると、送信時に急にエラーが出て利用者が困ります。

Power Apps側では、保存ボタンの DisplayMode を切り替えるだけでも操作ミスを減らせます。

If(
    IsBlank(txtTitle.Text) || IsBlank(drpStatus.Selected.Value),
    DisplayMode.Disabled,
    DisplayMode.Edit
)

大事なのは、保存前に気づける設計にすることです。必須チェック、文字数、選択肢の未選択、日付の前後関係など、利用者が迷いやすい場所から入れていきましょう。

委任とデータ件数は最初に確認する

Abstract visualization of data analytics with graphs and charts showing dynamic growth.

PowerApps SharePoint連携で一番後戻りが大きいのは、委任データ件数です。小さなテストデータでは動いても、本番リストが増えた瞬間に検索結果が欠けることがあります。

委任できない式は最初の500件だけを見る

委任とは、検索や絞り込みをPower Apps側ではなく、データソース側で処理してもらう考え方です。式が委任できない場合、Power Appsは一部のデータだけをローカルに取得して処理します。

Power Apps limits the result size to 500 records.

Delegation overview

設定で上限を2000件まで増やせますが、それは根本解決ではありません。データが1万件、5万件と増えるなら、委任できる式に寄せる必要があります。

注意

委任警告を無視すると、アプリは動いているように見えても、実際には一部のデータしか検索していないことがあります。

SharePointで使いやすい検索条件に寄せる

SharePointリストでは、すべてのPower Fx式が委任できるわけではありません。公式のSharePointコネクタの委任情報を見ながら、使いやすい条件に寄せるのが大事です。

やりたいこと寄せたい式注意点
前方一致検索StartsWith(Title, txtSearch.Text)部分一致より扱いやすい
ステータス絞り込みStatus.Value = "未対応"列の型を確認する
日付順の並び替えSortByColumns(Requests, "Created")列名を間違えない
複雑な条件条件を分けるNotや変換関数に注意

特に、Not や複雑な文字列加工を組み合わせると委任不可になりやすいです。検索画面では、まず FilterStartsWithSortByColumns で作れるか考えると安定します。

大きなリストでは列設計とビューを分ける

SharePointリストが大きくなる予定なら、アプリ側だけで何とかしようとしない方がいいです。検索に使う、ステータス、日付、担当者などを先に決めて、リスト側の設計も合わせます。

  • よく使う検索列を決める
  • ステータスや日付で絞り込めるようにする
  • 不要な列をアプリ画面に持ち込まない
  • 一覧と詳細で表示する列を分ける
  • 大量データならDataverseも比較する

SharePointは手軽さが魅力ですが、大量データを自由に検索する用途では限界もあります。「後で増えそう」と感じたら、最初にデータ量を見積もっておくと失敗しにくいです。

PowerApps SharePointの委任で見るポイント

SharePointでよいケースとDataverseを考えるケース

Three professionals discussing strategies at a whiteboard in an office setting.

SharePointは始めやすいデータソースですが、すべての業務アプリに最適とは限りません。最後に、SharePointで始めてよいケースと、Dataverseを検討したいケースを分けておきます。

SharePointで始めやすいケース

SharePointで始めやすいのは、部署内の台帳申請、問い合わせ管理のように、構造が比較的シンプルな業務です。既にMicrosoft 365を使っていて、リスト運用に慣れているなら導入しやすいです。

たとえば、次のようなケースです。

  • 部署内だけで使う小〜中規模の台帳
  • 申請ステータスを管理するリスト
  • Excel管理をSharePointリストに移したい業務
  • 添付ファイルを少し扱う簡単な受付管理

この範囲なら、SharePointリストとPower Appsだけでも十分に始められます。最初の成功体験を作るには、小さな業務から始めるのが向いています。

Dataverseを検討したいケース

一方で、データ量が多い、権限が複雑、テーブル同士の関係が多い場合は、Dataverseを検討した方がよいです。SharePointで無理に作ると、あとから作り直しになることがあります。

判断軸SharePoint向きDataverse検討
データ構造単純なリスト中心複数テーブルの関係が多い
権限リスト単位で足りる行単位やロール管理が必要
データ量中小規模大量データや複雑検索
業務重要度部署内の改善全社基幹に近い

SharePointが悪いわけではありません。ただ、業務の重さに対してデータソースを選ぶことが大事です。

権限と運用を先に決める

SharePoint連携では、リストの権限も忘れずに見ます。アプリ画面でボタンを隠しても、SharePointリスト側に権限があればデータを見られる可能性があります。

注意

Power Appsの画面制御だけを権限管理として考えるのは危険です。SharePoint側の権限、リストの共有範囲、アプリの共有範囲をセットで確認してください。

運用では、誰がリスト列を変更するのか、誰がアプリを更新するのかも決めておきます。列名や選択肢を勝手に変えると、アプリの式が壊れることがあるからです。

ポイント

SharePoint連携は「データの置き場所」と「アプリの画面」を分けて考えると安定します。リスト設計、権限、アプリ共有をセットで見るのがコツです。

PowerApps SharePointに関するよくある質問

ExcelよりSharePointリストの方がいいですか?

複数人で同時に使う業務なら、SharePointリストの方が向いています。列の型、権限、Power Appsとの接続を考えると、Excelよりアプリ化しやすいです。

SharePointフォームとキャンバスアプリはどちらを選ぶべきですか?

入力フォームだけ整えたいならSharePointフォームのカスタマイズで十分です。一覧、検索、詳細画面まで作りたいなら、キャンバスアプリとして作る方が自由度があります。

委任警告は無視してもいいですか?

小さな検証なら動くこともありますが、本番では無視しない方がいいです。件数が増えると検索漏れや表示漏れが起きるため、委任できる式に直すか設計を見直します。

SharePointリストは何件まで使えますか?

SharePoint自体は大きなリストを扱えますが、Power Apps側では委任できる式かどうかが重要です。500件や2000件の設定だけで安心せず、検索条件と列設計を確認してください。

まとめ

PowerApps SharePoint連携は、SharePointリストを使って早く業務アプリ化できる便利な方法です。ただし、列設計、フォーム、委任、権限を後回しにすると、あとで直す範囲が広がります。

まずは小さなSharePointリストを1つ選び、ギャラリー表示、フォーム保存、委任警告の確認まで通して試してみてください。

よかったらシェアしてね!
目次