1レコード入力して登録ボタンをクリックするのを繰り返すのは手間です。
そのため、頻繁にレコードを登録する運用を想定して、複数レコードを一括で登録する画面の作成方法を解説します。
登録先は、SharePointのリストとします。
Power Appsを体系的に学習したい方は、下記もご覧ください。
匿名で投稿できる目安箱アプリについて知りたい方は、下記もご覧ください。
Teamsを利用して組織内のコミュニケーションを強化したい方は下記もご覧ください。
・【事例付き】Teamsを活用したマネジメントTIPS集
・【マネージャー向け】Teamsアプリを活用した「誰が何を知っているか」の集約・共有 事例集
・【Teamsアプリ活用事例集】メンター制度を置き換えて新人・異動者の育成を効率化する方法
・【問い合わせ管理でお困りの方向け】問い合わせ対応・ナレッジ蓄積へのTeams活用事例集
・【マネジメント・業務把握にお困りの方向け】マネジメント・報告業務へのTeams活用事例集
・【Teamsアプリを活用事例集】週報を自動で収集しサマリー&フィードバックする方法とは
複数レコードの登録画面の作成方法
以下のような「社員名」「部署名」「作成日」のリストを想定して手順を解説します。
リストの名前は「testList」とします。

作成手順
Power Appsの作成画面で、以下のようにテキストラベル、テキスト入力、ボタンを追加します。
テキスト入力のコントロール名は、それぞれ薄字の名前にしています。

OnStartプロパティに以下を入れています。
1 |
ClearCollect(colList,Defaults(testList));Clear(colList); |

これは、コレクションにtestListの列名を覚えさせるために、一時的に作成して削除しています。(これをしないと以降の手順でエラーが出ます。)
次に、登録ボタンのOnSelectに以下を入れます。
1 2 3 4 5 6 7 |
If((Not(IsBlank(txtName1.Text) || IsBlank(txtDepartment1.Text) || IsBlank(txtDate1.Text))),Collect(colList, {Title: txtName1.Text, OData__x90e8__x7f72__x540d_:txtDepartment1.Text, OData__x9069__x7528__x65e5_:DateValue(txtDate1.Text)})); If((Not(IsBlank(txtName2.Text) || IsBlank(txtDepartment2.Text) || IsBlank(txtDate2.Text))),Collect(colList, {Title: txtName2.Text, OData__x90e8__x7f72__x540d_:txtDepartment2.Text, OData__x9069__x7528__x65e5_:DateValue(txtDate2.Text)})); If((Not(IsBlank(txtName3.Text) || IsBlank(txtDepartment3.Text) || IsBlank(txtDate3.Text))),Collect(colList, {Title: txtName3.Text, OData__x90e8__x7f72__x540d_:txtDepartment3.Text, OData__x9069__x7528__x65e5_:DateValue(txtDate3.Text)})); If((Not(IsBlank(txtName4.Text) || IsBlank(txtDepartment4.Text) || IsBlank(txtDate4.Text))),Collect(colList, {Title: txtName4.Text, OData__x90e8__x7f72__x540d_:txtDepartment4.Text, OData__x9069__x7528__x65e5_:DateValue(txtDate4.Text)})); If((Not(IsBlank(txtName5.Text) || IsBlank(txtDepartment5.Text) || IsBlank(txtDate5.Text))),Collect(colList, {Title: txtName5.Text, OData__x90e8__x7f72__x540d_:txtDepartment5.Text, OData__x9069__x7528__x65e5_:DateValue(txtDate5.Text)})); Patch(testList,colList); Clear(colList); |

1〜5行目は、3項目(社員名、部署名、作成日)すべてに値が入力されていたらコレクションcolListに追加、
6行目は、colListの内容をPatch関数でSharePointリストへ一括で新規登録、
7行目は、colListをClear関数で空にしています。(2重で追加してしまわないようにするため。)
SharePointリストの列名を指定する名前は、
- Titleは社員名、
- OData__x90e8__x7f72__x540d_は部署名、
- OData__x9069__x7528__x65e5_は作成日、
に対応しています。
作成日は、SharePoint側は日付形式にしたので、DateValue関数で日付形式に変換しています。
動作確認
動作確認してみます。
以下の3レコードを入力した状態で登録ボタンを押すと、

以下のように3レコードが正常に登録されます。

上記のように、Power Appsの画面で入力した順番どおりには登録されません。
順番も気になる場合は、もうひと工夫必要になりそうです。
まとめ
複数レコードを一括で登録する画面の作成方法を解説しました。
1レコードずつ登録するのがわずらわしいシーンの際に利用してみてください。
Power Appsを学びたい方は、下記のおすすめ学習方法もご覧ください。
匿名で投稿できる目安箱アプリについて知りたい方は、下記もご覧ください。
Teamsを利用して組織内のコミュニケーションを強化したい方は下記もご覧ください。
・【事例付き】Teamsを活用したマネジメントTIPS集
・【マネージャー向け】Teamsアプリを活用した「誰が何を知っているか」の集約・共有 事例集
・【Teamsアプリ活用事例集】メンター制度を置き換えて新人・異動者の育成を効率化する方法
・【問い合わせ管理でお困りの方向け】問い合わせ対応・ナレッジ蓄積へのTeams活用事例集
・【マネジメント・業務把握にお困りの方向け】マネジメント・報告業務へのTeams活用事例集
・【Teamsアプリを活用事例集】週報を自動で収集しサマリー&フィードバックする方法とは