Power Automate(クラウド版)でOutlookの一斉送信を自動化すると、コネクタ自体に「60秒あたり300回のAPI呼び出し」という上限があり、件数が多いとエラーコード429で途中停止することがあります。Windows 11に標準搭載されているPower Automate Desktopを使えば、このコネクタ特有の上限を受けずに、Excelの送信リストをもとにOutlookのクラシック版から一斉送信できます。ただしOutlook/Exchange Online自体の送信上限は変わらず適用されるため、上限そのものがなくなるわけではない点も、あわせて解説します。
対象OS Windows 11(Power Automate Desktop標準搭載)、Windows 10(要インストール)
クラウド版との違い:送信数の「上限」について
Power Automate(クラウド版)でOutlookのメールを自動送信する場合、Office 365 Outlookコネクタ自体に「60秒あたり300回のAPI呼び出し」という上限があります。送信件数(Excelの行数)が多いと、この上限に達してエラーコード429でフローが途中停止することがあります。
Power Automate Desktopは、クラウドのコネクタを経由せず、PCにインストールされたOutlookデスクトップアプリを直接操作(自動化)する仕組みです。そのため、クラウド版のような「Power Automateコネクタ特有の呼び出し上限」は受けません。
ただし、注意点があります。送信自体は同じOutlook/Exchange Onlineのメールボックスを使うため、Exchange Online側の送信上限(1日あたり最大10,000件、うち社外宛ては2,000件まで)は共通で適用されます。「デスクトップ版なら無制限に送れる」わけではありません。
Exchange Onlineの送信上限は24時間のスライディングウィンドウで計測されます。数千件規模の一斉送信を定期的に行う場合は、Microsoft 365管理センターで自組織の上限を確認したうえで、送信を複数日・複数回に分けることを検討してください。
Power AutomateでOutlookのメールを一斉自動送信する方法(クラウド版)
始める前に:デスクトップ版に必要な環境
以下の環境と準備が整っていることを確認してください。
- 従来のOutlookデスクトップアプリ(クラシックOutlook)がインストール・サインイン済みであること
- Power Automate Desktop(Windows 11は標準搭載、Windows 10は無料インストール)
- 送信リストのExcelファイル(クラウド版と異なり、OneDriveに置かずPC内のローカルファイルのままで使えます)
Outlook自動化アクションは、新しいOutlook for Windowsに対応していません。従来のOutlookデスクトップアプリ(クラシックOutlook)を使用してください。
Excelの送信リストを準備する
まとめて送信する宛先・件名・本文のデータをExcelに入力し、テーブルに変換したうえで、Power Automate Desktopから参照できるよう名前を付けます。
-
Excelを開き、1行目に列見出し「宛先」「件名」「本文」を入力し、2行目以降に送信先ごとのデータを入力します。
- 見出し行を含むデータ範囲を選択し、リボンの「挿入」→「テーブル」をクリックします。「先頭行をテーブルの見出しとして使用する」にチェックが入っていることを確認して「OK」をクリックします。
-
テーブル内の任意のセルを選択した状態で表示される「テーブル デザイン」タブを開き、「プロパティ」グループの「テーブル名」欄に分かりやすい名前(例:
MailList)を入力して変更します。この名前を後の手順でPower Automate Desktop側から指定します。 - ファイルをPC内の分かりやすい場所(例:
C:\Users\ユーザー名\Documents)に保存します。
テーブル名は既定では「テーブル1」のような名前になっています。分かりやすい名前に変更しておくと、Power Automate Desktop側で読み込み先を指定するときに迷いません。
Power Automate Desktopでフローを作成する
「Excelの読み込み」「Outlookの起動」「ループでの送信」の3ブロックを組み合わせます。
-
Power Automate Desktopを起動し、「+新規」→「新しいフロー」をクリックします。「フロー名」に任意の名前(例:「メールの自動送信」)を入力し、「作成」をクリックします。
-
作成すると、まだアクションが何もないフロー編集画面が開きます。ここに以下のアクションを順に追加していきます。
-
アクション ペインの検索欄で「Excel」と検索し、「Excelの起動」をフローにドラッグします。「Excelの起動」を「次のドキュメントを開く」に設定し、「ドキュメント パス」に手順1で保存したExcelファイルのパスを指定して「保存」をクリックします。生成される変数は既定で
ExcelInstanceです。
-
続けて「Excel ワークシートから読み取る」アクションを追加します。「Excel インスタンス」に
%ExcelInstance%を指定し、「取得」を「名前付きセルの値」に設定して、「名前」欄に手順1で設定したテーブル名(例:MailList)を入力して「保存」をクリックします。生成される変数は既定でExcelDataです。
-
「Outlook を起動します」アクションを追加します。このアクションに入力パラメーターはなく、そのまま「保存」をクリックします。生成される変数は既定で
OutlookInstanceです。
-
「For each」アクションを追加し、反復処理する値に
ExcelDataを指定します。ループ内で1行ずつ処理されます。 -
「For each」ループの内側に「Outlook からのメール メッセージの送信」アクションを追加します。「Outlook インスタンス」に
OutlookInstanceを指定し、「アカウント」に送信元のOutlookメールアドレスを入力します。「宛先」に%CurrentItem[0]%、「件名」に%CurrentItem[1]%、「本文」に%CurrentItem[2]%を指定します(Excelの列順:A列=宛先→[0]、B列=件名→[1]、C列=本文→[2])。本文にHTMLタグを使う場合は「本文 は HTML です」をオンにします。
- 「下書きとして保存」が必ずオフになっていることを確認してください。オンのままだとメールは送信されず、Outlookの下書きフォルダに保存されるだけになります。内容を確認する目的で一時的にオンにしていた場合は、本番実行前に必ずオフへ戻してください。
-
すべて追加すると、フローは次のような構成になります。必要に応じて、ループの外(Forループの後ろ)に「Outlookを閉じる」アクションを追加すると、送信完了後にOutlookを終了することができます。
「Outlook からのメール メッセージの送信」アクションには、宛先・CC・BCC・件名・本文(HTML可)・添付ファイルを指定できます。CCやBCCを使う場合は、Excelにも対応する列を追加し、%CurrentItem[番号]%で参照してください。
テスト実行してから本番の一斉送信を行う
本番のリストで実行する前に、必ずテストしてください。テスト実行では実際にメールが送信されます。
- Excelの送信リストに、自分宛てのテスト行を1件だけ用意した状態でフローを実行し、意図したとおりのメールが届くか確認します。
- 件名・本文・宛先の差し込みに問題がなければ、Excelを本番の送信リストに差し替えてフローを再実行します。
こんなときは:よくあるつまずきポイントと対処法
- フローは成功しているのにメールが届かない:「Outlook からのメール メッセージの送信」アクションの「下書きとして保存」がオンになっている可能性があります。オフにして再実行してください。
- 新しいOutlookを使っている:Outlook自動化アクションは新しいOutlook for Windowsに対応していません。「クラシックOutlook」(従来のOutlookデスクトップアプリ)を使用してください。
- 「送信数の上限がない」と誤解している:Power Automateコネクタ特有の呼び出し制限は受けませんが、Exchange Online自体の送信上限(1日最大10,000件、社外は2,000件)は共通で適用されます。
- 実行中にExcelやOutlookを操作してしまう:フロー実行中にExcelやOutlookのウィンドウを閉じたり操作したりすると、以降のアクションが失敗します。実行中は他の作業をしないでください。
- 大量送信で迷惑メール判定される:短時間に大量送信すると、宛先側でスパム扱いされることがあります。件数が多い場合は「待機」アクションを挟んで送信間隔をあけてください。
Outlookでメールの下書きをまとめて作成・送信する方法(VBA)
よくある質問
Q. デスクトップ版ならOutlookの一斉送信に上限はありませんか?
いいえ、上限がなくなるわけではありません。Power Automate(クラウド版)のコネクタ特有の呼び出し制限(60秒あたり300回など)は受けませんが、送信自体はOutlook/Exchange Onlineの仕組みを使うため、Exchange Online側の送信上限(1日最大10,000件、社外宛ては2,000件まで)は共通で適用されます。
Q. 新しいOutlook(new Outlook for Windows)でも使えますか?
使えません。Outlook自動化アクションは新しいOutlook for Windowsに対応していないため、従来のOutlookデスクトップアプリ(クラシックOutlook)をインストールして使用する必要があります。
Q. Power Automate Desktopは無料で使えますか?
自分のPCで自分自身が実行する範囲(アテンド型自動化)であれば、追加ライセンスなしで無料で使えます。無人(unattended)実行やクラウドフローとの連携など一部の機能は、別途有料ライセンスが必要です。
確認環境 Windows 11 / Power Automate Desktop / Outlook デスクトップアプリ(クラシック)/ Excel for Microsoft 365
最終更新 2026年9月24日
関連サイト(外部)