【PowerAutomate】SharePointから取得したリストを列挙してメールで送信する


今回はSharePointから取得したデータを列挙してメールで送信する処理を作成していきます。

デモに使用するSharePointのリストはこちら↓↓↓↓

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3069823/0e47ed1b-bf16-8d24-79a0-d00ee4a7008b.png)

こちらのリストの値を取得して、列挙してメールで送信する処理をPowerAutomateで作っていきたいと思います。
<br>

※こちらは有償版のクラウドフローの記事になります。
　PowerAutomate, SharePointのライセンスが必要になります。



## SharePointから取得したリストを列挙してメールで送信する

#### ⒈ SharePointからリストを取得する

PowerAutomateを開いて、[作成]をクリックし、インスタントクラウドフローを選んでフローを作ります。
フロー名は任意の名前をつけてください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3069823/a3bfa90b-ec48-6f88-3af7-27e92c223814.png)


`＋新しいステップ`をクリックして、アクションを追加していきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3069823/2f9126c2-289a-b82e-47ab-56fbe7fde107.png)

検索窓で「SharePoint」を入力し、[複数の項目の取得]アクションを選択してください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3069823/c7e90999-27d9-007e-41b7-568f0b183563.png)
必須「*」マークのついている箇所を設定していきます。
サイトのアドレスはSharepointでリストを作成したサイトを、
リスト名は作成したリストの名前を設定してください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3069823/ba2b487b-06e9-1e4f-c46c-3c18abb82790.png)

これでSharePointは準備OKです。


#### ⒉ 変数を作成する

SharePointのリストの値を格納するための変数を作成します。

`＋新しいステップ`をクリックし、変数を検索して、[変数を初期化する]アクションを選択してください。
名前を「Qiita記事リスト」としました。
記事名のリストなので、種類は文字列とします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3069823/498839ff-4c65-8b00-14b1-237e09ab385b.png)

これで変数の準備はOKです。

#### ⒊ 変数にリストの値を格納する

変数にリストの値を格納していきましょう。

リストの値を取り出すには「コントロール」から[Apply to each]を…と思われるかもしれませんが(もちろんこの方法でもできます)、PowerAutomateの場合、もっと少ない手順でループ処理を作成することが可能です。

先程と同じようにステップを追加し、「変数」を検索して[文字列変数に追加]を押してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3069823/e2899c36-7d1a-a820-0e89-211a25827a98.png)

文字列を追加したい変数名に、⒉で作成した変数「Qiita記事リスト」を指定します。
列挙する値は、IDとタイトル、カテゴリの3つにしたいと思います。
![スクリーンショット 2023-07-28 174326.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3069823/bb678623-709a-6c7b-6946-14fea69e9873.png)

動的なコンテンツからまずはIDをクリックします。
すると……
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3069823/20a85790-20b1-cd12-7e07-2bd131fe14a2.png)
なんと、自動的にループ処理である[Apply to each]が作成されました！便利ですね！
残りの動的なコンテンツも追加していきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3069823/87fbda72-439d-674e-cf49-a636f78d8bea.png)

これでメインの処理の記述は終わりました！
きちんとリストを丸ごと取得出来ているか確認してみましょう。

#### ⒋メールで送信する

今回はoutlookを使用して、自分宛にQiita記事リストを送信します。

ステップを追加し、「outlook」を検索し、[メールの送信]を選択してください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3069823/17f275c0-b66f-a061-7c36-b6458d40c2f5.png)

自分のメールアドレスを宛先に設定し、件名を入れて、本文には先程用意した変数`Qiita記事リスト`を選択します。
![スクリーンショット 2023-07-28 175544.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3069823/382d180f-1601-c4c4-d989-298346fa8f26.png)

ここまでできたら、保存して実行してみましょう！！

保存→右上のテストをクリックして、手動で「フローの実行」を行ってみましょう。
フローの実行の後に完了ボタンを押すと、実行結果を確認することができます。


## フローを実行して中身を確認してみる

さて、中身を確認してみましょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3069823/12d86224-7ef1-68a0-5e6b-83e7d6627082.png)

きちんとすべての記事リストが取得され、送信されてきたのが確認できました。

ただ…少し見づらいですね。

改行を加えてみましょう。

メールはHTML方式なので、改行もそのように記述します。`<br>`を文末に挿入します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3069823/9045c62d-63d3-d70a-f798-42b3e2a1b090.png)
これで再度実行すると…
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3069823/182a9548-e6b7-1ab9-eb25-835d1d34fbf9.png)

見やすく出力することができました！

## おわりに

読んでいただきありがとうございました！
お役に立てれば幸いです。