ましゅまろで質問をいただいたので回答します。
- こんなましゅまろをいただきました。
- まずはExcelで「参加者一覧」テーブルを作成する
- 作成したExcelファイルを任意のSharePointサイト(またはOneDrive)にアップロードする
- フローを作る
- フローを実行してみる。
- 「期日3日前に送信」をどうやって実現するか
こんなましゅまろをいただきました。
「Excelで定義した特定のユーザーに自動でBCCメールを送るフロー」のサンプルを紹介します。
「期日3日前に送信」についてはサンプルフローの章のあとに調査のとっかかりになる情報を紹介しますのでご自身で挑戦してみてください。 To: ましゅまろくれたかた。
作成したExcelファイルを任意のSharePointサイト(またはOneDrive)にアップロードする
ここでは例としてOneDriveにアップロードしました。
フローを作る
全体図
「手動でフローをトリガーします」トリガー
ここではサンプルとして手動トリガーを使っています。
「表内に存在する行を一覧表示」アクション
「Excel Online (Business)」>「表内に存在する行を一覧表示」アクションです。これ使って先ほど定義したテーブルのすべての行を取得します。
「アレイのフィルター処理」アクション
「データ操作」>「アレイのフィルター処理」アクションです。「メール送信」フラグ列が"はい" の行だけ取得します。
"from": "@outputs('表内に存在する行を一覧表示')?['body/value']",
"where": "@equals(item()?['メール送信フラグ'], 'はい')"
「選択」アクション
「データ操作」>「選択」アクションです。取得した行の列のうち、「参加者メールアドレス」列をプロパティ名無しで取得する。
"from": "@body('アレイのフィルター処理')",
"select": "@item()?['参加者メールアドレス']"
「結合」アクション
「データ操作」>「結合」アクションです。「参加者メールアドレス」の配列をセミコロン区切りで1行のテキストにします。
"from": "@body('選択')",
"joinWith": ";"
「変数を初期化する」アクション
「変数」>「変数を初期化する」アクションです。メール送信アクションに宛先の文字列を渡すために変数化します。
"variables": [
{
"name": "宛先",
"type": "string",
"value": "@body('結合')"
}
}
「期日3日前に送信」をどうやって実現するか
やることは2つです
- 期日を定義する
- 期日の3日前にメール送信のアクションを実行する
1 については「Excelシートに記載する」とのことなので参加者一覧と同様にExcelファイル内で別のテーブルを定義して参照してあげれば実現できると思います。
2については、下記記事の章『「スケジュール実行」と「即時実行」の分岐後の処理』を参考にしてください。
この記事のフローで「延期期限」アクションを使うことによって指定した日時に目的のアクションを実行しています。
wataruf.hatenablog.com
以上です。