こんにちは!今回はPowerAppsで使用頻度の高い基礎を10選紹介します。
PowerAppsは、プログラミング不要でアプリを作成できるMicrosoftのローコードツールです。
「ちょっとした業務改善アプリが欲しい」「自分でアプリを作ってみたい」という方にぴったり。
この記事では、そんなPowerAppsの入門記事として作成時にぜひ使ってほしいコードをコンパクトに紹介していきます。
1. Patch 関数で高速にデータ更新(フォームを使わない最速更新)
フォーム(EditForm)を使わずにデータを更新したい場合は Patch() が最強です。
▼ 例:SharePointリストのタイトルとステータスを更新
Patch(
Tasks,
LookUp(Tasks, ID = ThisItem.ID),
{
Title: TextInput_Title.Text,
Status: Dropdown_Status.Selected.Value
}
)
ポイント
- フォームより高速
- カスタム UI と組み合わせやすい
- 複数フィールドの更新も柔軟
2.複数データ同時更新(ForAll × Patch の鉄板パターン)
チェック付きギャラリーなどで「選択したレコードを一括更新」したい場合。
ForAll(
Filter(Gallery1.AllItems, Checkbox1.Value = true),
Patch(
Tasks,
ThisRecord,
{ Status: "Completed" }
)
)
大量データの一括処理に便利です。
3.変数 vs コンテキスト変数の正しい使い分け
| 種類 | 使い方 | 用途 |
|---|---|---|
| Set() | アプリ全体 | ログイン中ユーザー、設定値、テーマ管理 |
| UpdateContext() | 画面内のみ | モーダル開閉フラグ、入力一時保存 |
| With() | 一時スコープ | 式の可読性向上、重いデータの一時参照 |
例:With で式を綺麗にする
With(
{ _user: User() },
Label_UserName.Text = _user.FullName
)
4.Concurrent で API/データ取得を高速化
複数データソースの読み込みを並列化してアプリ起動を高速化できます。
Concurrent(
ClearCollect(listA, SharePointA),
ClearCollect(listB, SharePointB),
ClearCollect(listC, SharePointC)
)
データ取得が多いアプリでは必須。
5.動的にコンポーネント化 → 再利用性アップ
PowerApps の "component" を使うと UI を再利用できます。
例:共通ヘッダーコンポーネント
- タイトル
- 戻るボタン
- 現在時刻
などを 1 度作れば、全画面に適用可能。
6.ローディング画面(スケルトンUI)で UX を劇的改善
データ読み込み時にユーザーに「固まった?」と思わせないための定番テク。
If(
IsEmpty(listA),
LoadingScreen,
MainScreen
)
読み込み中は簡易スケルトンを表示するとアプリが洗練されます。
7.エラー取得 & 通知表示の必須パターン
エラーをユーザーに通知するには IfError() を使うのが安全。
IfError(
Patch(Tasks, Defaults(Tasks), { Title: TextInput1.Text }),
Notify("更新に失敗しました", NotificationType.Error),
Notify("更新完了!", NotificationType.Success)
)
業務アプリではほぼ必須です。(Notifyもあり)
8.遅延ロード(パフォーマンス対策)
アプリ読み込み時にすべてのデータを取得すると重くなるため、必要なタイミングでロード。
例:画面を表示したときに読み込む
OnVisible = ClearCollect(listA, SharePointA)
動作が劇的に軽くなります。
9.データカードのロック解除で細かい UI 調整
フォーム内の DataCard はそのままだと編集しづらいですが
右クリック → “ロック解除”
で自由に UI カスタマイズできます。
Power Apps UI カスタムの基本テクです。
10.JSON() 関数でデバッグやログ出力も可能
データ構造の確認や外部システムとの連携時に便利。
Set(_json, JSON(ThisItem, JSONFormat.IndentFour))
Power Automate や外部 API 呼び出しで重宝します。
以上、PowerApps 制作者がよく使う基礎コード10選でした。