「Patch関数の使い方がわからない…」
「Patch関数で特定のレコードを更新するのってどうやるの?」と考え込んでしまう人は少なくありません。
PowerAppsでデータを送信するときは、既存のレコードを更新したり、新しいデータを追加したりするケースが多々あります。
そのような場面で活躍するのが「Patch関数」です。
Patch関数を使えば、フォームを使わずに特定のレコードを直接更新したり、新規作成したりすることができます。
本記事では、PowerAppsのPatch関数の基本的な使い方や活用方法を詳しく解説しています。
記事の内容を参考に、Patch関数をマスターしてしまいましょう。
PowerAppsをもっと効率的に学びたいと考えている方には、Udemyのオンライン講座がおすすめです。
初心者向けのコースが充実しており、動画で実践的に学べるため、独学よりもスムーズにスキルを習得できます。
特に、PowerAppsの基本操作や関数の使い方を体系的に学びたい方に最適です。
PowerAppsのPatch関数とは?
PowerAppsのPatch関数は、データソースの特定のレコードを更新、または新しいレコードを追加するために使われる関数です。
フォームを使用せずにデータを変更できるため、より柔軟なアプリ開発が可能になります。
Patch関数の主な用途は以下の通りです。
- 特定のレコードの更新(例:特定のタスクのステータスを変更)
- 新しいレコードの追加(例:新規ユーザーをリストに追加)
- 特定のフィールドのみの部分更新(例:価格フィールドのみ変更)
PowerAppsのPatch関数の基本的な使い方
Patch関数の基本構文は以下の通りです。
Patch(データソース, レコード, 更新する内容)
例えば、SharePointリスト「Tasks」の特定のタスクのステータスを「完了」に更新する場合、次のように記述します。
Patch(
Tasks,
LookUp(Tasks, ID = 1),
{
Status: "完了"
}
)
1. 新しいレコードを追加する
新しいデータを追加する場合は、Defaults関数を使用します。
Patch(
Tasks,
Defaults(Tasks),
{
Title: "新しいタスク",
Status: "未着手"
}
)
上記コードをボタンなどのOnSelectに入れると、Tasksリストに新しいレコードを追加します。
2. 複数のレコードを一括更新する
Patch関数はForAll関数と組み合わせることで、複数のレコードを一括で更新できます。
ForAll(
Filter(Tasks, Status = "進行中"),
Patch(
Tasks,
ThisRecord,
{
Status: "完了"
}
)
)
上記のコードは、ステータスが「進行中」のすべてのタスクを「完了」に変更します。
PowerAppsのPatch関数を使う際の注意点
Patch関数を使うときは、以下のような注意点を理解した上でコーディングできると、データ操作が最適化されたアプリを開発できますよ。
- Patch関数とSubmitForm関数の違いを理解する
- デリゲーションに気をつける
- エラー処理を実装する
それぞれ誰もが陥りがちなポイントなので、詳しく見ていきましょう。
Patch関数とSubmitForm関数の違い
Patch関数は特定のレコードを個別に更新するために使用されますが、SubmitForm関数はフォームを使ってデータを送信します。
- Patch関数: フォームなしでデータを個別に変更
- SubmitForm関数: フォームのデータ全体を送信
どちらを使うかは、アプリの構造や要件によって決めると良いでしょう。
デリゲーションに気をつける
PowerAppsでは、Patch関数を使用する際にデリゲーション(データのサーバー処理)が発生することがあります。
特にSharePointを使用する場合、大量のデータ処理をする際にはデリゲーション制限を考慮する必要があります。
エラー処理を実装する
Patch関数を使用する際は、エラーが発生する可能性もあるため、IfError関数などを活用してエラーハンドリングを行いましょう。
IfError(
Patch(
Tasks,
LookUp(Tasks, ID = 1),
{
Status: "完了"
}
),
Notify("更新に失敗しました", NotificationType.Error)
)
上記のコードは、IfErrorがfalseになったときにNotify関数の”更新に失敗しました”がポップアップされます。
まとめ
PowerAppsのPatch関数を活用することで、データの更新や新規追加を柔軟に行えます。
フォームを使わずに特定のレコードのみを変更したり、複数のデータを一括で更新したりできるため、アプリ開発の自由度が大幅に向上します。
ただし、大量データの処理やデリゲーションの影響には注意が必要です。
適切なエラーハンドリングを実装しながら、Patch関数を効果的に活用しましょう。
PowerAppsはUdemyで学べる!


学習スタイル | オンライン講座 ・動画 ・スライド |
---|---|
運営会社 | 株式会社ベネッセコーポレーション |
期間 | 購入した講座は無期限で視聴可能 |
料金 | 1,500円〜29,000円(税込) |
サポート | 年間通してセール多数開催 購入前に無料視聴可能 30日間返金保証 など |
Udemyは、オンラインで幅広い分野のスキルを手軽に学べる、世界最大級のオンライン学習プラットフォームです。
PowerAppsだけでなく、PowerAutomateを含むPowerPlatform系以外にも以下のような講座があります。
- ビジネス
- プログラミング
- デザイン
- 語学
- 趣味 など
20万以上のコースから、動画講座で自分のペースで学習できます。



Udemyは不定期ですが頻繁にセールを開催します。
95%以上割引かれて1,500円で購入できる講座もありますよ!
\ 最大95%OFFのセールをチェック! /