Power Automate Power Automate × Excel

【Power Automate】Excelに書き込み|セルを指定して値を入力する完全ガイド

Excel業務を自動化したいとき、よくあるニーズのひとつが「特定セルにデータを書き込む」という処理です。
手作業で行っていた入力や転記をPower Automateで自動化すれば、入力ミスを防ぎつつ、処理スピードも大幅に向上します。

この記事では、「Power AutomateでExcelに書き込む方法」を中心に、セルを指定して値を入力する具体的な手順を解説します。
クラウド版・デスクトップ版(Power Automate Desktop)の両方の使い方と、実務でよくある応用パターンもあわせて紹介します。

✅ Power AutomateでExcelを書き込む仕組みとは?

Power Automateには、Excelデータを操作する2つの方法があります。

種類特徴主な用途
Power Automate(クラウド版)OneDrive・SharePoint上のExcelファイルを操作データ追加・一覧取得・条件書き込み
Power Automate Desktop(PAD)PC上のExcelアプリを直接操作セル指定・書式設定・複雑な自動化

つまり、クラウド上で共有しているファイルを扱うならクラウド版
ローカルPCで実際にExcelを開いて操作するならデスクトップ版を使います。


✅ Excel Online(クラウド)でセルに書き込む基本構成

クラウド版のPower Automateでは、主に「Excel Online(Business)」コネクタを使用します。
ただし、セル単位での直接指定はできず、「テーブル形式での書き込み」が基本です。

・前提準備

  1. ExcelファイルをOneDriveまたはSharePoint上に配置。
  2. 書き込みたい範囲を選択して、テーブルとして書式設定
  3. テーブル名を付けて保存(例:Table1)。

テーブル化することで、Power Automateがセルを「行」「列」として認識できるようになります。


✅ 例①:指定セル(列)にデータを書き込む方法(クラウド版)

ここでは、フォーム入力やメールデータなどをExcelの特定列に自動で書き込む例を見てみましょう。

・実行フロー概要

  1. トリガー:「フォーム回答を受け取ったとき」
  2. アクション:「Excel Online(Business)→ 行を追加」
  3. 各列に入力内容をマッピング

設定例:

  • テーブル名:Table1
  • 列名:日付名前金額
列名Power Automateでの設定値
日付utcNow() (実行日)
名前動的コンテンツ > 回答者名
金額動的コンテンツ > 入力金額

これにより、実行のたびに新しい行が追加され、指定セルに自動で値が書き込まれます。


✅ 例②:既存のセルを上書き更新する方法(クラウド版)

行追加ではなく、既存セルを更新したい場合には「行を更新」アクションを使用します。

・手順

  1. 「Excel Online(Business)」の「行を一覧表示」アクションで全データを取得
  2. 条件式(例:社員ID = 1001)で該当行を抽出
  3. 「行を更新」アクションで特定列(セル)に新しい値を指定

設定例:

  • 条件:@equals(items('Apply_to_each')?['社員ID'], '1001')
  • 更新列:「出勤日数」→ add(int(items('Apply_to_each')?['出勤日数']), 1)

これにより、既存セルを特定して書き換えることが可能になります。


✅ Power Automate Desktopでセルを直接指定して書き込む方法

クラウド版はテーブル単位ですが、Power Automate Desktop(PAD)なら「A1」「B5」などセルを明示的に指定できます。
このため、シート内の特定場所へ正確に値を入力する処理に最適です。


・ステップ1:Excelを起動する

  1. アクション「Excelの起動」を追加。
  2. 既存のブックを開く場合:「ドキュメントを開く」にファイルパスを指定。
  3. 空白ファイルを新規作成する場合は「空のドキュメントを作成」に設定。

・ステップ2:セルに書き込む

  1. 「Excelワークシートに書き込み」アクションを追加。
  2. 書き込みたいセルを「A1」「B2」のように入力。
  3. 値を「テキスト」または「変数」で指定。

例:

セル書き込む値
A1"日付"
B1"売上高"
A2%CurrentDate%
B2%SalesValue%

PADでは、「%変数名%」を使用して値を動的に設定できます。


・ステップ3:複数セルへ連続書き込み

複数データを1行ずつ書き込みたい場合、「For Eachループ」を使います。

例:

  1. 変数 %ExcelDataTable% に元データを保持。
  2. 「For Each CurrentItem in ExcelDataTable」アクションを配置。
  3. 「セルに書き込み」アクションで動的セルを指定。

セル位置を可変にするには、次のような変数式を利用します。

"A" & %RowCounter%

ループごとに行番号が増加し、順番に書き込みが行われます。


・ステップ4:保存と終了

最後に「Excelを保存」「Excelを閉じる」「Excelの終了」を追加しておきます。
これを入れ忘れるとExcelがバックグラウンドで残り、次のフローでエラーの原因になります。

参考:【Power Automate】複数のExcelに転記する方法|大量データの自動分配と業務効率化




✅ 応用例①:条件によって書き込み先セルを変える

製造日や取引先など、条件によって異なるセルに書き込みたい場合は、If分岐を活用します。

例:

If 取引先 = "A社" → セル"B2"に書き込み  
If 取引先 = "B社" → セル"C2"に書き込み

PADでは次のように設定します。

  1. 「If」アクションで条件を設定
  2. True側に「Excelワークシートに書き込み」アクションを配置
  3. False側に別セルの書き込みを設定

条件式の記述例:

%ClientName% = "A社"

これにより、顧客別の報告書や自動帳票作成にも対応できます。

参考:【Power Automate】Excel転記を条件付きで自動化する方法|効率化と正確性を両立


✅ 応用例②:Excelの最終行を検出して自動で追記

書き込み先を毎回指定するのではなく、「最後の行の次に自動追加したい」ケースも多いでしょう。

PADで最終行を検出するには次の手順を使います。

  1. 「Excelの最終使用行を取得」アクションを追加
    → 結果を変数(例:%LastRow%)に格納
  2. 書き込みセルを "A" & %LastRow% + 1 のように指定

これで、毎回新しいデータを最終行の下に追記できます。


✅ 応用例③:書き込み後に自動で計算や保存を実行

Power Automateでは、書き込んだ後の処理も自動化できます。

  • 「セルの値を読み取り」アクションで入力結果を確認
  • 「Excelに数式を書き込む」アクションで自動計算
  • 「PDFとして保存」アクションで帳票を出力

例:

セルC2に "=A2+B2" を書き込む  
→ Excelで自動計算  
→ ファイル名を日付付きで保存

これにより、報告書・請求書・日報などを完全自動生成できます。


✅ よくあるトラブルと対処法

トラブル原因対処法
セルに書き込まれないExcelが閉じていない/指定が間違い「Excelをアクティブ化」→「シート選択」を追加
ファイルがロックされる同時アクセスまたは未保存実行前にファイルを閉じる/コピー処理を追加
値が正しく入力されない変数の型が不一致数値→文字列の変換に ToString() を使用
行ずれが起きる動的セル指定の式が誤り行番号変数を初期化・インクリメントで制御

✅ 実務での利用シーン例

シーン内容
売上データ登録システムから取得した売上データをExcelに自動転記
生産日報記録製造実績や稼働時間を指定セルに入力して保存
メール内容集計Outlookの件名や送信者をExcel台帳に自動記録
在庫更新システム出力CSVをもとに在庫表を自動更新
レポート出力書き込んだExcelをPDF変換して自動送信

特に、「毎日同じ形式のExcelにデータを入力する」業務では、Power Automate Desktopが非常に効果的です。


✅ Power AutomateでのExcel書き込みを安定させるコツ

  1. セル指定は明示的に行う
    「A1」「B2」など固定セル指定が基本。動的指定は変数制御で明確化。
  2. 書き込み前にシートをアクティブにする
    「Excelワークシートをアクティブ化」でエラー防止。
  3. エラーハンドリングを設定
    ファイル使用中などのエラー時は「Try-Catch」構文で再試行。
  4. 自動保存を組み込む
    最後に「Excelを保存」アクションを必ず入れる。
  5. ログを残す
    成功・失敗ログを別ファイルに記録して、トラブル時の確認を容易に。

✅ まとめ:Power Automateでセル指定書き込みを使いこなすとExcel業務が変わる

  • Power Automateでは、クラウド版で「テーブル単位」、Desktop版で「セル単位」の書き込みが可能。
  • PADなら「A1」など明示的なセル指定に対応し、柔軟な自動化が実現。
  • 条件分岐・最終行検出・ループ処理を組み合わせることで、実務レベルの自動入力が可能。
  • 書き込み後に計算・保存・通知を組み合わせることで、完全なExcel自動化フローを構築できる。

Power Automateを使えば、毎日の入力作業を「人が操作するExcel」から「自動で更新されるExcel」に変えられます。
セル指定の書き込みをマスターすれば、Excel業務の自動化レベルが一気に上がるでしょう。

    -Power Automate, Power Automate × Excel