Power Automateで、Excelの一覧をつかって一斉メールを送りたい
![](https://mocabrown.com/blog/wp-content/uploads/image-30.png)
メール送信リストに対して一斉送信をしたいというシチュエーションはよくあるでしょう。今回は条件なしに、表に記載されている宛先への一斉メール送信をしてみます。
Excel Onlineに送信先の一覧を作る
まずSPO上に送信したいメールアドレスを書いたデータを用意しました。データはテーブル化して、テーブルに名前をつけましょう。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-31.png?resize=620%2C165&ssl=1)
表ができたら右上の「テーブルとして書式設定をクリック。適当なスタイルを選びます。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-32.png?resize=310%2C176&ssl=1)
先頭行に見出しをつけてあるので、チェックを入れた状態で[OK]をクリック。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-33.png?resize=620%2C228&ssl=1)
テーブルにカーソルを置くと、メニューに「テーブルデザイン」という項目が出るのでクリック。左上に適当なテーブル名を指定しておきます。今回は「sampleテーブル」にしました。
Excel Onlineコネクターを使う
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-34.png?resize=620%2C405&ssl=1)
Power Automateに移って、Excel Onlineから[表内に存在する行を一覧表示]をクリックします。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-35.png?resize=620%2C280&ssl=1)
先ほど作った表が入っているExcelの場所を指定します。テーブルには先ほど名前をつけたテーブル名が出てくるはずです。
※例ではスケジュール済みクラウドフローを使っていますが、今回の例の場合は何回もメールを送り付けてしまうので、インスタントクラウドフローから始めるほうが良いですね。
テストしてみる
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-36.png?resize=380%2C94&ssl=1)
ここまで出来たら、一度保存して「テスト」を実行してみましょう。正常に実行できました。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-37.png?resize=620%2C519&ssl=1)
理解を深めるために、このExcelコネクターが何を出力したのか見てみましょう。[クリックしてダウンロードします]をクリックします。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-38.png?resize=801%2C160&ssl=1)
なにやらどっさり文字が出てきました。これがJSONです。注目するのは最後のところ。value:のカッコ[]の中にメール:と名前:があります。それぞれの後ろには具体的なメールアドレスと、名前が書いてあります。
Apply to eachを使う
では、編集に戻って、新しいステップとして[組み込み]-[コントロール]-[Apply to each]を選びます。
「以前の手順から出力を選択」の欄を選択して、⚡稲妻マークをクリックすると、「表ないに存在する行を一覧」の「value アイテムの一覧」が候補として出てきますので選択します。(画面が違うよ、という方は試験的な機能を使っていないためです。こちらを参考に設定することをお勧めします。)
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-39.png?resize=620%2C504&ssl=1)
アクションの追加をクリックします。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-40.png?resize=620%2C337&ssl=1)
ちなみに、「Apply to each」というのは、ぐるぐる回して中身を取り出すというイメージを持っておくとよいでしょう。
Outlook 365コネクターを使う
Outlook365の「メールの送信(V2)」を選択します。「サインイン」を求められた場合は、認証を行ってください。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-41.png?resize=620%2C459&ssl=1)
宛先欄をクリックして、⚡稲妻マークをクリックすると、候補として「表内に存在する行を一覧表示」の中に[メール]が表示されていますので、クリックします。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-42.png?resize=620%2C474&ssl=1)
同様に、本文の中に宛先の名前を追加しましょう。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-43.png?resize=620%2C440&ssl=1)
これで完成です。Excelに作成したテーブルのメールアドレスに送信しますので、まずは自分宛に送信テストを行うことをお勧めします。
テストを実行したあと、各フローの右上角が緑色のチェックマークになっていれば成功です。「Apply to each」の中を開いてみると、どのような値で送信ができたかがチェックできます。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-44.png?resize=620%2C578&ssl=1)
テストが成功したら、本文を修正して送信すると良いでしょう。
送信制限を意識して待機時間を設定してみる
Office 365のメール送信には、送信数に関する制限がありますのでチェックしておきます。
1分あたり30個のメッセージという制限があります。フローは一瞬で動作するので、30件以上の宛先への送信ではそれを超えてしまう恐れがあります。念のためメールを1件送信するたびに2秒待って送信するようにしてみましょう。
編集に戻ってメール送信の下にある[アクションの追加]をクリックします。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-45.png?resize=620%2C542&ssl=1)
[組み込み]-[スケジュール]-[遅延]を選択します。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-46.png?resize=620%2C523&ssl=1)
待ち時間を2秒に設定してみました。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-47.png?resize=620%2C469&ssl=1)
Excelのリストからメール送信というシチュエーションはよく使うかと思います。メールの部分をTeamsのメッセージ送信に変更すれば、簡単にチャットを送信させることができます。
これで安心です。
一歩踏み込んで中身を見てみよう
宛先に追加した「メール」の部分にマウスポインターを置いてしばらく待ってみると、内部で使われている式を覗いてみることができます。itemsという関数でAplly_to_eachのなかの「メール」という値をとって来ていることがわかります。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-48.png?resize=620%2C436&ssl=1)
同じように「Apply to each」の「value」にもマウスを重ねてみましょう。こちらは、前項目のExcelコネクターの出力から、「body/value」をとってきていることがわかります。
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-49.png?resize=620%2C243&ssl=1)
![](https://i0.wp.com/mocabrown.com/blog/wp-content/uploads/image-38.png?resize=620%2C124&ssl=1)
もういちど例の出力を見てみると理解が深まります。「value」の中に「メール」がありました。ここを引っ張ってきているんですね。
他にもちょっとしたPower Automateの小技を集めて書き溜めていますのでこちらからご覧ください。
ディスカッション
コメント一覧
まだ、コメントがありません