Excelの顧客リストにメール送信する方法【Power Automate Desktop】

Power Automate Desktop

今回は、Excelの顧客リストをもとにメールを送信する方法について解説します。

【STEP1】Excelの起動

追加するアクション

Excel の起動

「ドキュメント パス」に対象のExcelファイルのフルパスを指定します。フルパスはファイルの上にカーソルを当てた状態でCtrlを押しながら右クリック>パスのコピー、もしくは「ドキュメント パス」横にあるファイルマークを押して指定することもできます。

【STEP2】Excelのシートからリストを読み込む

追加するアクション

Excel ワークシートから読み取る

「取得」は、今回は「ワークシートに含まれる使用可能なすべての値」としました。

今回の例と同じようなファイル内容であればこれで大丈夫かと思いますが、欄外にコメントが書いてあったりするとうまく取れないので、その場合は以下を選んでみてください。

項目概要
単一セルの値単一のセルを取得します。
先頭列・先頭行を指定します。
セル範囲の値セル範囲の値を取得します。
先頭列・先頭行を指定します。
選択範囲の値ワークシートでアクティブになっているセルを取得します。
ワークシートに含まれる使用可能な
すべての値
ワークシートに存在する値すべてを取得します。

【STEP3】Outlookの起動

Outlookを起動します。

追加するアクション

Outlookを起動します

設定内容はデフォルトのままでOKです。

【STEP4】For eachでリストの件数分処理する

取得したExcel内容から、For eachを使って1件ずつ取り出し処理します。

追加するアクション

For each

「反復を行う値:」には「%ExcelData%」を選択します。

リストの各データをもとにメール送信

次に、取得したリストに対して、1件ずつメール送信を行います。全体像としては以下のようになります。

ちょっと複雑そうに見えますが、以降で詳しく解説していきますのでご安心ください。

ヘッダ行は処理しないようにする

追加するアクション

If

Excelのリストを1行ずつ取り出したとき、1行目はヘッダである「名前」「メールアドレス」になっています。

なので、取り出した内容がヘッダだったらメール送信の処理はしない、というフローを作成します。

for文で取り出した、ExcelDataの1行分(CurrentItem)から、「メールアドレス」の行だけ取り出して、「メールアドレス」という文字列が入っているかどうかで判断します。

最初のオペランド

「最初のオペランド」は、%CurrentItem[1]%が入ります。これは、CurrentItemの中から「メールアドレス」の列のみ取り出した形となります。

演算子

「演算子」には「と等しくない(<>)」を設定します。

2番目のオペランド

「2番目のオペランド」には、比較対象となる文字列である「メールアドレス」を入力します。

メールの送信

追加するアクション

Outlookからのメールメッセージの送信

if文のなかに「Outlookからのメールメッセージの送信」を追加します。

変更するのは以下になります。

項目設定内容
宛先%CurrentItem[1]%
件名メール送信のテスト
本文こんにちは!%CurrentItem[0]%さん

これはメール送信のテストです。

%CurrentItem[1]%のように設定することで、For eachループで取り出した中身をメール本文に埋め込むことができます。

【STEP5】Outlookを閉じる

追加するアクション

Outlookを閉じます

設定内容はデフォルトのままでOKです。

メール送信中に「Outlookを閉じます」を実行すると、以下のようなメッセージが表示されて閉じられないことがあります。

これを防ぐために、Waitアクション等の待機処理を入れて対応します。

まとめ

今回は、Excelの顧客リストをもとにメールを送信する方法について解説しました。

なんらかのリストに対してループを回して処理する場面はけっこうあるかなと思います。このようなフローが作成できれば、定期的にメールを配信したり、今回の例のように名前を埋め込んで内容を変えることも可能です。

For each、ifを使う箇所、[0]のように取り出す位置を指定する方法はやや応用になるので、もしよく分からなかった、こんな処理を自動化したい、等ありましたらお気軽にお問合せ/コメントいただければと思います。

chaso

文系出身、数字が苦手な平凡主婦。塾講師、大手企業SE、不動産事務、Webライター、QAエンジニアを経て現在RPAエンジニアとして働いています。機械音痴だけど効率化や自動化をこよなく愛しています!お仕事の依頼・ご相談は問い合わせよりお願いいたします♪

chasoをフォローする

コメント

タイトルとURLをコピーしました