Power Automate Desktop(PAD)を使うことで、Excelシートに保存されたデータをもとに自動でメールを一括送信することができます。手動で1件ずつメールを送る手間を省き、時間を効率的に使えるため、業務の自動化に非常に役立ちます。この記事では、初心者向けにExcelシートを活用したメール一括送信の手順をわかりやすく解説します。
1. Excelシートの準備
最初に、Excelで以下のような構造のシートを用意します。
| 名前 | メールアドレス | メッセージ |
|---|---|---|
| 山田 太郎 | taro@example.com | こんにちは、山田さん |
| 佐藤 花子 | hanako@example.com | こんにちは、佐藤さん |
| 鈴木 一郎 | ichiro@example.com | こんにちは、鈴木さん |
- 名前: 宛名の欄です。
- メールアドレス: 宛先のメールアドレスです。
- メッセージ: メール本文に含める内容です。
Excelファイルが準備できたら、次にPower Automate Desktopでこのデータを読み込んでメールを送るフローを作成します。
2. Power Automate Desktopで新しいフローを作成
- Power Automate Desktopを起動します。
- 画面左上の「新しいフロー」をクリックし、フロー名を入力して「作成」を選択します。
- フローの編集画面が表示されます。
3. Excelシートを開く
次に、Excelシートを開いてそのデータを読み取る手順を設定します。
- [Excelの起動] アクションを追加します。これによりExcelが自動で起動します。
- 「表示しない」にチェックを入れることで、バックグラウンドでExcelを操作できます。
- 「ドキュメントパス」には、事前に用意したExcelファイルのパスを指定します。
- [ワークシートを読み取る] アクションを追加し、読み取るシートのデータ範囲を設定します。
- 「範囲」に、例えば「A1」と入力して、Excelの表全体を選択します。
- 「保存先」には、Excelデータを格納するための変数を設定します(例:
ExcelData)。
4. ループ処理でデータを1行ずつ読み取る
次に、読み取ったExcelのデータを1行ずつ処理して、各行に基づいてメールを送信します。
- [各行を繰り返す] アクションを追加します。
- 「コレクション」には、先ほど設定した変数
ExcelDataを指定します。
- 「コレクション」には、先ほど設定した変数
- ループ内で、各セルのデータを個別に取得するために、[リスト内の要素を取得] アクションを追加します。
- 名前:
%CurrentItem[0]% - メールアドレス:
%CurrentItem[1]% - メッセージ:
%CurrentItem[2]%
- 名前:
5. メールの送信設定
次に、Power Automate Desktopからメールを送信するためのアクションを追加します。
- [メールを送信] アクションを追加します。
- 「送信先」には、
%CurrentItem[1]%を指定して、Excelから読み取ったメールアドレスを使用します。 - 「件名」には任意の件名を入力します。例えば、
"お知らせ"など。 - 「本文」には、宛名とメッセージを挿入します。例えば、以下のように変数を組み合わせて使用します。
%CurrentItem[0]%さん、 %CurrentItem[2]% よろしくお願いします。 - 「送信先」には、
6. Excelを閉じる
メール送信が完了したら、最後にExcelを閉じます。
- [Excelの終了] アクションを追加し、「保存しない」を選択します。
7. フローを実行する
以上の設定が完了したら、右上の「実行」ボタンをクリックしてフローを実行します。Excelシートに保存された各行のデータに基づいて、メールが一括送信されます。
よくある質問
Q1. メールの送信に使うアカウントはどのように設定しますか?
Power Automate Desktopでメールを送信する際には、通常はPCに設定されているデフォルトのメールアカウントが使われます。例えば、Outlookを使用している場合、Outlookアカウントでメールが送信されます。Outlookアクションを使う場合は、「[Outlookのメールを送信]」アクションを使用して、特定のアカウントを指定することも可能です。
Q2. エラーメッセージが出た場合、どう対処すれば良いですか?
Excelファイルのパスやアクションの設定が正しいか確認してください。また、フロー実行時にExcelファイルが既に開いているとエラーになる場合があります。その場合は、事前にExcelファイルを閉じておくか、[Excelの起動]アクションで「ファイルが既に開かれている場合」を設定することで対応できます。
Q3. メールの本文にExcelのデータ以外の内容を追加できますか?
はい、メール本文に固定のテキストやカスタムメッセージを自由に挿入することができます。例えば、冒頭に「こんにちは」といった挨拶文を入れたり、署名を追加したりすることができます。本文のテンプレートを工夫して、個々の受信者に合わせたパーソナライズされたメッセージを送ることも簡単です。
