データテーブルへ行を追加する(列の順番・項目数を図解)
商品・数量の2列の表へ、リストの2項目を末尾の1行として追加します。項目数の確認と、列順を間違えた場合の違いも比べます。
画面上の名前は、表示言語やバージョンによって異なる場合があります。Desktopの例は、フロー作成時に「Power Fx を有効にする」をオフにした標準構文です。Power Fx対応フローでは式・変数参照・インデックスの書き方が異なります。このページでは変数を %変数名% と表記します。出力変数の名前を入力する欄では、前後の % は付けません。
実行前に確認
- 列見出しと値は位置で対応します。NewRow[0]は商品、NewRow[1]は数量です。見出しの名前を見て自動で振り分ける処理ではありません。
- 新しい値にはリストまたはデータ行を指定します。「ノート,3」という1つのテキストを渡す例ではありません。リストの項目数をテーブルの列数に合わせてください。
- 項目数の確認だけでは、列の順番・値の型・商品名の妥当性は保証しません。実務へ広げる前にそれぞれの入力を確認します。
- 行の挿入は同じOrdersを更新し、新しい結果変数は生成しません。データテーブルはフロー内の値なので、この操作だけではExcelやCSVは作成されません。
- 既定のエラー時フロー停止を保ちます。挿入失敗を「項目数が合わず追加しなかった」分岐と混同しないでください。
- 有人・手動の練習です。クラウド起動や無人実行へ広げる場合はライセンスと実行環境を別途確認してください。
1使うアクション
- アクション 1新しいデータ テーブルを作成する商品・数量の2列、練習用1行 → Orders
- アクション 2データ テーブルを消去Ordersを2列・0行に初期化
- アクション 3新しいリストの作成空の NewRow
- アクション 4項目をリストに追加ノートを NewRow に追加
- アクション 5項目をリストに追加数値3を NewRow に追加
- アクション 6IfNewRow.Count が 2 と等しい
- アクション 7行をデータ テーブルに挿入するOrders の末尾へ NewRow を追加
- アクション 8メッセージを表示追加後の行数を表示
- アクション 9Else
- アクション 10メッセージを表示項目数を確認してください。追加しません
- アクション 11EndIf の終わり
図で見る処理のイメージ
概念図2列の空の表へ、左から商品・数量の順に1行を足す練習です。項目数が2でなければ、追加せず案内を表示します。
入力
Orders:商品・数量の2列/0行。NewRow:ノート、3
項目数を確認
2項目なら末尾へ追加。それ以外は追加せず案内
結果
商品=ノート、数量=3の1行。見出しはそのまま
通常は0行→1行になり、「追加後の行数:1」を表示します。項目数が合わない場合は0行のままです。
| 追加するリスト | 項目数の判定 | 商品列/数量列 | Ordersの行数 |
|---|---|---|---|
| ノート → 3 | 2項目:追加 | ノート / 3 | 0 → 1 |
| ノートだけ | 1項目:追加しない | データ行なし | 0 → 0 |
| ノート → 3 → 予備 | 3項目:追加しない | データ行なし | 0 → 0 |
| 3 → ノート | 2項目:判定を通る | 列の意味が逆。件数だけでは防げない | 挿入内容・型を確認 |
| ノート → 3を既存1行に再度挿入 | 2項目:追加 | 同じ行も追加対象 | 1 → 2 |
図と表は仕様に基づく練習用の期待値です。実際のPower Automateフローを実行した結果ではありません。列順が逆の例は型制約などによるエラーにも注意し、成功と断定しません。
設定と処理を説明する模式図です。実際の設定画面や実行結果のスクリーンショットではありません。
2実際の設定内容
入力する値・操作手順を確認する10ステップの設定と確認方法
- 1
準備:WindowsのPower Automate for desktopで、Power Fxをオフにした練習用フローを手動実行します。架空の商品だけを使い、Excel・CSVへの書き込みや外部接続はしません。
- 2
新しいデータ テーブルを作成する:編集画面で列名を左から「商品」「数量」にし、練習用・0の1行を入れて確定します。生成される変数を Orders にし、直後の「データ テーブルを消去」で %Orders% の全行を消します。変数ペインで2列・0行を確認します。初期化の図解は関連ページ「空のデータテーブルを作成する」を参照してください。
- 3
新しいリストの作成:生成される変数を NewRow にします。「項目をリストに追加」の項目に ノート、追加先に %NewRow% を指定します。次の同じアクションでは項目に %3%(数値の式)、追加先に %NewRow% を指定します。
- 4
If:最初のオペランドを %NewRow.Count%、演算子を「と等しい」、2番目を数値 2 にします。この練習ではOrdersを2列に固定しているため、2と比較します。
- 5
Ifの中に「行をデータ テーブルに挿入する」を置きます。[データ テーブル]=%Orders%、[挿入場所]=データ テーブルの末尾、[新しい値]=%NewRow%。末尾に追加するため行インデックスは指定しません。
- 6
挿入の直後、同じIf内の「メッセージを表示」で本文を「追加後の行数:%Orders.RowsCount%」にします。ボタン=OK、自動で閉じる=オフ。通常の例では1と表示されます。OKを押して閉じ、変数ペインで商品=ノート、数量=3を確認します。
- 7
Else側は「メッセージを表示」の本文を「項目数を確認してください。追加しません」にします。ボタン=OK、自動で閉じる=オフにし、EndでIfを閉じます。Else側には行の挿入を置きません。
- 8
比較:数量を追加するアクションを一時的に無効にし、先頭から実行するとNewRowは1項目になり、Else側だけを通ります。Ordersは0行のままです。確認後は数量の追加を有効に戻します。
- 9
列順の確認:項目数が2でも、追加順を3→ノートにすると列の意味が逆になります。件数のIfは意味の間違いを検出できません。商品→数量の順に戻してください。挿入でエラーが出た場合は既定の停止を保ち、成功表示へ進めません。
- 10
再実行:この練習を先頭から実行するとOrdersとNewRowを作り直すため、結果は毎回1行です。既存の表へ組み込む際はOrdersの作成で以前の行を消さないようにします。同じNewRowを既存表へ再度挿入すると、重複行も追加対象になります。
- 対象環境
- Power Automate for desktop(Windows)
- 更新日
- 2026年10月14日