Power Automate Desktopで受注数量5以上だけを別ファイルに自動転記する方法

  • URLをコピーしました!

Excelの売上明細データを使って、「特定の条件を満たしたデータだけを別ファイルに転記したい」と思ったことはありませんか?

たとえば、売上数量が5以上の商品だけを集計したいとき、手作業で転記するのは大変です。
そんな時に便利なのが、**Power Automate Desktop(PAD)**です。

今回は、**「売上数量が5以上の行だけを別のExcelファイルに自動で転記する方法」**を、PADの操作とあわせて詳しく解説します。前提知識として、「反復処理(ループ)」の基本がわかっているとスムーズです。


目次

使用するファイル:売上明細.xlsx

以下のようなデータが入力されているExcelファイルを使用します。

商品名	単価	売上数量	金額
A商品 500 3 1500
B商品 800 7 5600
C商品 1200 9 10800

転記先には、**列名だけが記載された空のExcelファイル(転記先.xlsx)**を用意しておきます。


ステップ1:転記先ファイルを開く

まずは、出力先となる転記ファイルを開きます。

  1. 「Excelの起動」アクションを追加
  2. 「次のドキュメントで開く」を選択
  3. ファイルパスに転記先.xlsxを指定
  4. Excelインスタンス名を「ExcelInstance2」とする(自動で命名されることが多い)
  5. 保存して実行 → ファイルが正しく開くことを確認

ステップ2:空白行を取得する(2行目からデータを開始するため)

データは列名の次の行(2行目)以降に書き込む必要があります。
そのため、最初に空白行を調べて取得しておきます。

  1. 「Excelワークシートから最初の空の行を取得」アクションを追加
  2. Excelインスタンスに「ExcelInstance2」を指定
  3. 結果を変数「FirstFreeRow2」に保存

→ 実行後、「FirstFreeRow2 = 2」であれば、2行目から書き込めるということです。


ステップ3:売上明細.xlsxを開いてデータを読み取る

  1. 「Excelの起動」アクションで売上明細.xlsxを開く
  2. 「Excelワークシートから範囲を読み取り」アクションを追加
    • 読み取った範囲をデータテーブル変数「ExcelData」に格納
  3. 「Excelを閉じる」アクションで売上明細ファイルを閉じる(インスタンスは破棄されない)

ステップ4:1行ずつ繰り返し処理(For Each)

  1. 「For Each」アクションを追加
    • 対象:%ExcelData%
    • カレントアイテム変数:CurrentItem(自動で生成される)

このアクションにより、売上明細の各行データを1つずつ処理することができます。


ステップ5:書き込む行番号を変数で管理

繰り返し書き込み時に、行を1行ずつ下にずらすための変数を設定します。

  1. 「変数の設定」アクションをFor Eachの外に追加
    • 変数名:cnt
    • 値:0
  2. For Eachの中にある「Excelワークシートに書き込み」アクションを設定
    • インスタンス:ExcelInstance2
    • 値:%CurrentItem%
    • 列:A
    • 行:%FirstFreeRow2 + cnt%
  3. 「変数を大きくする」アクションをFor Each内に追加
    • 変数名:cnt
    • 増分:1

これで、2行目、3行目、4行目…と、1件ずつデータを書き込むことができます。


ステップ6:条件で絞って転記(売上数量が5以上)

ここからが本題です。売上数量が5以上のデータだけを転記したいので、Ifアクションで条件を指定します。

  1. 「If」アクションをFor Eachの中に追加
  2. 条件の設定
    • 最初のオペランド:%CurrentItem[2]%(売上数量は3列目 → インデックスは2)
    • 演算子:>=
    • 2番目のオペランド:5
  3. IfとEnd Ifの間に、以下のアクションを入れる
    • 「Excelワークシートに書き込み」
    • 「変数を大きくする」

これで、売上数量が5未満の行はスキップされ、条件を満たす行だけが転記されます。


ステップ7:実行と確認

フローを保存して実行します。
転記先ファイルを開いて、以下のようになっていれば成功です。

商品名	単価	売上数量	金額
B商品 800 7 5600
C商品 1200 9 10800

よくある質問

Q1. 転記されたデータが上書きされて2行目ばかりになる

→ 行番号をずらすためのcnt変数が正しく増えていない可能性があります。「変数を大きくする」アクションがIfの中にあるか確認してください。

Q2. 条件がうまく判定されず、すべての行が転記されてしまう

→ 条件の式で使っている列番号が間違っていることが多いです。売上数量が3列目にあるなら、CurrentItem[2]を使う必要があります(0始まりでカウント)。

Q3. 数値の条件が文字列として比較されている気がする

%CurrentItem[2]% が文字列扱いになっていると、>= などの演算子が正しく機能しません。必要に応じて「数値に変換」アクションを入れてください。


まとめ

この記事では、Power Automate Desktopを使って次の操作を行う方法を解説しました。

  • Excelファイルを開いてデータを読み込む
  • 転記先ファイルを開いて、最初の空白行を把握
  • For Eachで1件ずつ処理
  • 条件(売上数量が5以上)を指定して転記
  • 書き込み位置を変数で制御して、縦に出力

このように条件付きの自動転記処理を作成することで、日々のExcel作業が大幅に効率化されます。
実際に動かしながら理解を深めて、自分の業務に活用してみてください。慣れてくれば、もっと複雑な条件処理やファイル操作にも応用できます。

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

目次