Power Automate Desktopを使ってメルマガを送るツール、いわゆるメール配信システムを作成する方法を解説します。
「メルマガをやってみたいけどメール配信スタンドを契約するのはまだちょっと・・・」
「手動でやってたけど読者も増えてきて、さすがに面倒になってきた。」
という方はぜひお試しください。
なお、以下のようなメルマガ読者さんのアドレスリストをエクセルで作成しているという前提とします。
今回は、読者NOが「3」以上の読者さんにのみメールを送信するようにします。
またメール本文には、名前の差し込みを行いたい思います。
では早速作成していきましょう。
Excelの起動と初期設定
アドレスリストが記載されたExcelファイルを読み込みます。
アクションの「Excel の起動」をMainフローにドラッグします。
Excel の起動画面で「次のドキュメントを開く」を選択し、アドレスリストのExcelファイルを指定します。
Excelファイルを開いたら、後々利用するための空の位置を取得しておきます。この空の位置を取得しておくことによって、空のところまで読み込んだり、空の位置の後ろに書き込んだりすることができます。
アクションの「Excelワークシートから最初の空の列や行を取得」をMainフローにドラッグします。
「Excelワークシートから最初の空の列や行を取得」画面ではこのまま「保存」ボタンをクリックします。
Excelファイルからのデータ読み込み
続いて、Excelファイルからデータを読み込みます。
アクションの「Excel ワークシートから読み取り」をMainフローにドラッグします。
「Excel ワークシートから読み取り」画面にて、それぞれ次の値を設定します。
Excelインスタンス:%Excellinstance%
取得:セル範囲の値
先頭列:1
先頭行:2
最終列:%FirstFreeColumn-1%
最終行:%FirstFreeRow-1%
繰り返し処理の実装
続いて、読み込んだデータの行数分だけ処理を繰り返します。
アクションの「For each」をMainフローにドラッグします。
「For each」画面にて、反復処理を行う値として「ExcelData」を選択して保存します。
こうすることで、読者のアドレスリストを順番に処理できるようになります。
メール送信処理の実装
メールの送信処理を実装します。
ここではPower Automate Desktopと相性の良いOutlookを使用することにします。
アクションの「Outlookを起動します」をMainフローの繰り返し処理の前にドラッグします。
アクションの「Outlookからのメールメッセージの送信」をMainフローの繰り返し処理の間にドラッグします。
「Outlookからのメールメッセージの送信」の設定画面ではそれぞれ以下の値を設定します。
アカウント:(送信元のアドレス)
宛先:%CurrentItem[1]%
タイトル:(任意)
本文:(任意)名前の差し込みには%CurrentItem[2]%を使用
メールの送信には少し時間がかかるので、メールを送るごとに少し間隔を空けるようにしましょう。
アクションの「Wait」をMainフローの「Outlookからのメールメッセージの送信」の後にドラッグします。
「Wait」の設定画面では、数秒間、処理を中断するように指定します。
条件設定
このままだと全員にメールが送信されます。それでもいいのですが、今回は読者NOが「3」以上の読者さんにのみメールを送信してみます。
アクションの「if」をMainフローの「Outlookからのメールメッセージの送信」の前にドラッグします。「if」の設定画面では、以下のように設定します。
最初のオペランド:%CurrentItem[0]%
演算子:以上である(>=)
2番目のオペランド:3
Mainフローに配置済の「Outlookからのメールメッセージの送信」と「Wait」のアクションを「IF」と「End」の間に移動します。
終了処理
終了処理として、アクションの「Outlookを閉じます」と「Excelを閉じる」をMainフローの最後ににドラッグします。
これで簡単なメルマガ配信システムの完成です。
実行すると、読者NOが「3」以上の2人にのみメールが送信されます。
今回の全体像としては次の通りです。
なお、今回は簡単な条件でメール送信する方法を解説しましたが、少し改良すればステップメールも送れるようになります。
また、エクセルに項目を追加したり送信条件を変更したりすればかなり高度なメール配信システムも実現可能です。
興味のある方はいろいろと試してみると面白いですよ。