【Microsoft365】Forms、SharePoint、Teams、PowerAutomate、Outlookを活用し、メールエイリアス申請を半自動化する

現在、紙によるメールエイリアスの申請に対してMicrosoft365(Forms、SharePoint、Teams、PowerAutomate、Outlook)を活用し、ペーパーレス、半自動化を実現しました。
特定の一般アカウントで作成すると退職などでアカウントが削除された時にMicrosoft365で作成したFormsアンケートなども削除されてしまう可能性があるため、Microsoft365ローカルユーザーを新規作成、Microsoft365ローカルユーザーでFormsアンケートなどを作成し、一般アカウントと共同作業できるよう設定しました。
はじめてPowerAutomateを利用したので自身の備忘のために残しておきたいと思います。
目次
概要
1.メールエイリアス申請者は、Formsアンケートに必要事項を入力し、送信。
2.Formsアンケートへ入力された内容は、SharePointのリストへ自動登録。(PowerAutomateで連携)
3.SharePointのリストへ自動登録されたらTeamsのチャネルへ自動投稿。(PowerAutomateで連携)
4.メールエイリアス作成担当者は、Sharepointのリストを確認してメールエイリアスを作成。
5.メールエイリアス作成担当者は、Sharepointのリストの「メール連絡」列の値を「済み」へ変更することで申請者へ自動でメール送信。(PowerAutomateで連携)
課題と対策
先に記載しますが検証したなかで1点課題が見つかりました。
本来、SharePointのリストの「グリッドビューでの編集」で「メール連絡」列の値を「済み」に変更して「グリッドビューの終了」することでメール送信されるはずでした。
しかし、すでに「メール連絡」列の値が「済み」にしてメール送信済みの行の別の値を更新した場合もメール送信されることがわかりました。
これは運用上問題がありますので「メール連絡」列が「済み」の行は、非表示になるようSharepointのリストのフィルターを設定し、追加メールの送信を防ぐことにしました。
Formsアンケート作成
Formsについては、特に難しい操作は必要ないので詳しい説明は割愛いたします。以下のFormsアンケートを作成しました。

Formsアンケートの設定
共同作業または複製 > 共同作業者の追加 > リンクを知っている****の特定のユーザーは、結果を編集および表示できます をクリックします。
以下のようにFormsアンケートを共同で編集したいユーザーを登録しておきます。

他、Formsアンケートの対象者や1人につき1回の回答とするかなどを設定します。

Formsの設定は以上です。
Sharepointは、今まで触れたことがなかったので詳しくありません。慣れている方が設定を見るとちょっと・・・と思うかもしれませんがとりあえず思いどおりに動作したのでご了承ください。
左ペインのSharePointのスタートページアイコン > サイトの作成 > チームサイト をクリックします。
任意のサイト名を入力(sinsei)、グループメールアドレス(sinsei)を入力、言語の選択(日本語)を選択し、次へをクリックします。
メンバーの追加で任意のメンバーを追加し、完了をクリックします。
SharePoint > マイサイト > 作成したサイト名(sinsei)をクリックします。
ホーム > 新規 > リスト をクリックします。
空白のリスト > 名前、説明、サイトナビゲーションに表示(チェック入れる)> 作成をクリックします。
おそらく今作成したリスト(メールエイリアス申請リスト)が開いた状態になっていると思います。
リストに列を追加するため「列の追加」をクリックします。
以下の流れで列を追加しました。
・列の追加 > テキスト > 次へ > 名前(申請者)> 種類(1行テキスト)> 保存
・列の追加 > テキスト > 次へ > 名前(内線番号)> 種類(1行テキスト)> 保存
・列の追加 > テキスト > 次へ > 名前(現在利用しているメールアドレス)> 種類(1行テキスト)> 保存
・列の追加 > テキスト > 次へ > 名前(希望するメールアドレス)> 種類(1行テキスト)> 保存
・列の追加 > テキスト > 次へ > 名前(対応者)> 種類(1行テキスト)> 保存
・列の追加 > 選択肢 > 次へ > 名前(対応ステータス)> 選択肢(未対応・対応中・完了・重複のため完了)> 規定値(未対応)> 保存
・列の追加 > 選択肢 > 次へ > 名前(重複管理)> 選択肢(重複あり・重複なし)> 規定値(重複なし)> 保存
・列の追加 > 選択肢 > 次へ > 名前(メール連絡)> 選択肢(未対応・済み・重複のため済み)> 規定値(未対応)> 保存
・列の追加 > 複数行テキスト > 次へ > 名前(備考)> 種類(1行テキスト)> 保存
左ペインのリスト名をクリック > 右上のすべてのアイテム > 現在のビューの編集 をクリックします。
名前:
ビュー名:「メールエイリアス申請リスト」を入力します
このビューのWebアドレス:「mailaliaslist」を入力します
列:
タイトルのチェックをはずす
登録日時にチェックを入れて、右側プルダウンの並び順を「1」に設定
フィルター:
次の条件に該当する場合だけアイテムを表示するを選択します
アイテムを表示する列の条件を以下のとおり設定します
フィルターを設定することで「メール連絡」列の値が「未対応」のみ表示されるようになります。

画面一番下へスクロールし、OKをクリックします。
左ペインのサイトコンテンツ > コンテンツタブ > コンテンツ名のすぐ右横へマウスポインターを移動 > 縦3つの丸をクリック > 設定をクリックします。

列:
登録日時をクリック
表示形式を「フレンドリ」から「標準」へ変更し、OKをクリック
(これで登録日時の表示が 1日前 から 2023/8/5 のように変更されます)
右上の歯車設定アイコン > サイトの設定 をクリック
サイトの管理 > 地域の設定 をクリック
タイムゾーン を「(UTC+09:00)大阪、札幌、東京」へ変更
稼働日の定義の曜日にすべてチェックし、OKをクリックします。
リストが作成されました。

次は、共同作業できるようにメンバーを追加します。
左ペインのリスト名をクリック。
上部の共有をクリック。
歯車アイコンをクリック。
共有の設定で「選択したユーザー」を選択。
その他の設定で「リストを編集できます」を選択。
適用をクリック。
検索欄で共有したいユーザーを検索。 リンクのコピーをクリックしてメッセージ欄へ貼り付け。 送信ボタンを押すことで共有したいメンバーへメールが送信されます。受信したメンバーはメール内のリンクからSharepointのリストへアクセスが可能となります。
Sharepointの設定は以上です。
PowerAutomateを起動
左ペインのホームをクリックします。
上部の検索ウィンドウへ「フォームの回答をSharePoint」と入力すると候補が表示されます。
候補にある「フォームの回答をSharePointに記録します」をクリックします。

続行をクリック
このような画面が表示されます。

1つずつ進めていきます。
When a new response is submitted
フォームID > プルダウンから該当するFormsアンケートを選択します。

Get response details
フォームID > プルダウンから該当するFormsアンケートを選択
応答ID > 応答IDは、そのままとします。

Create item
SharepointのリストへFormsアンケートのどの値を連携させるかここで設定します。
対応ステータスValueなどプルダウンで設定するものは既定値を設定します。
また、Sharepointのリストで直接入力したい場合は、ここでは何も設定しません。
サイトのアドレス > プルダウンからSharePointのサイト名を選択
リスト名 > Sharepointの該当のリスト名を選択
タイトル > タイトルを入力(▲何を入力したらよいか不明・・・)
申請者 > 空欄をクリックして雷アイコンからSharePointの申請者に該当するFormsアンケート項目を選択します。※雷アイコンは、購入しているライセンスか割り当てられているライセンスかの違いで表示されない場合があります

・内線番号 > 空欄をクリックして雷アイコンからSharePointにある内線番号と同じ内容のものを選択
(先に記載していますがSharepointの設定で内線番号を数値にしているとここのパラメータ設定でFormsアンケートの値が表示されませんでした)
・現在利用しているメールアドレス > 空欄をクリックして雷アイコンからSharePointにある現在利用しているメールアドレスと同じ内容のものを選択
・希望するメールアドレス > 空欄をクリックして雷アイコンからSharePointにある希望するメールアドレスと同じ内容のものを選択
・対応者 > 空欄
・対応ステータス Value > プルダウンから 未対応 を選択
・重複管理 Value > プルダウンから 重複なし を選択
・メール連絡 Value > プルダウンから 未対応 を選択
・備考 > 空欄
保存をクリックします。
「フローを開始する準備ができました。テストすることをお勧めします」が表示されることを確認します。

マイフロー > クラウドフロー をクリックすると作成したフローが作成されています。

ここでいったん動作確認しておきます。
申請者にてFormsアンケートを入力し、送信します。

担当者は、SharepointのリストへFormsアンケートへ登録した内容が連携されていることを確認します。

この時点でTeamsのチャネルが存在してない場合は、作成しておきます。
Teamsを起動します。
チームに参加、またはチームを作成 をクリック
チームを作成 > 最初から > プライベート > チーム名を入力 > メンバーを追加 > 閉じる をクリック
作成したチーム名の横の3つの点をクリック > チャネルを追加 をクリック
チャネル名「メールエイリアス申請チャネル」を入力 > すべてのユーザーのチャネルのリストでこのチャネルを自動的に表示します にチェックを入れる > 追加 をクリック
チャネルが作成されました。

先ほど作成したPowerAutomateのフローの下へステップを追加します。
PowerAutomateを起動
左ペインのマイフロー > クラウドフロー > 「フォームの回答をSharepointに記録します」をクリック。
左上の編集をクリックするとフローが表示されます。
「新しいステップ」をクリック

Microsoft Teamsをクリックします。

アクションタブの中から「チャットまたはチャネルでメッセージを投稿する」をクリックします。

チャットまたはチャネルでメッセージを投稿する
投稿者:フローボット
投稿先:Channel
Team:チャネルが存在するチーム名
Channel:投稿するチャネル名
Message:フリーフォーマットで入力することができます
1行目:Message欄をクリックするとサブウィンドウが開き、SharepointやFormsアンケートの値を参照することができます。

2行目:文字列入力後、文字列を反転させた状態で眼鏡のようなリンクのアイコンをクリック
Link Title や Link Target を入力し、Add をクリック。
文字列にリンクが付くのでクリックしてアクセスできることを確認しておきます。

3、4行目:リンク切れに備えてリンクを記載しておきます。
保存をクリックします。
「フローを開始する準備ができました。テストすることをお勧めします」が表示されることを確認します。

ここでいったん動作確認しておきます。
申請者にてFormsアンケートを入力し、送信します。

チャネルに投稿されました。
リンクをクリックします。

Sharepointのリストが表示さることを確認します。

メールエイリアスの登録処理が完了し、最後に申請者へ完了メールを送信します。
完了メール送信は、Sharepointのリストのメール連絡の値を「済み」に変更することでPowerAutomateが実行されてメール送信される仕組みを作成します。
PowerAutomateを起動
左ペインの作成 > 自動化したクラウドフロー をクリック
フロー名:メールエイリアス申請_メール送信
フローのトリガーを選択してください:検索ウィンドウへ「sharepoint」を入力、「アイテムが作成または変更されたとき」を選択し、作成をクリック。

サイトのアドレス:SharePointのサイトを選択
リスト名:SharePointの該当のリストを選択
(詳細オプションを表示するをクリックして展開)
ビューによる列の制限:SharePointの該当のリストを選択

新しいステップをクリックします。
検索欄に「スイッチ」を入力してアクションタブに「スイッチ」が表示されるのでクリックします。

「スイッチ」のオンの横のテキスト欄をクリックし、雷アイコンから判定に利用する値を選択。
今回は「メール連絡 Value」を指定します。

「ケース」の次の値と等しいのテキスト欄をクリックし、「メール連絡」の「済み」を直接入力します。

「アクションの追加」をクリック。
操作を選択してください:検索ウィンドウへ「outlook」を入力、アクションタブから「メールの送信(V2)」を選択。

メールの送信(V2)
宛先:ウィンドウをクリック、右側の矢印アイコンをクリック
雷アイコンをクリック > もっと見る をクリック
希望するメールアドレス を選択 ★エイリアス
希望するメールアドレスが反映されたらその後ろに「@mstesttenant01.onmicrosoft.com」を入力

件名:任意の件名を入力
本文:
雷アイコンをクリック
申請者を選択
申請者の後ろに「様」を入力

保存をクリック
「フローを開始する準備ができました。テストすることをお勧めします」が表示されることを確認。
■フローの共有
※これを設定しないとフロー作成者以外がSharePointで「済み」へ変更してもフローへのアクセス許可がなく、メール送信ができませんでした。
左ペインのマイフロー > 該当のフローをクリック。
所有者の編集をクリックし、ユーザーを追加します。


「共有する前に・・・」画面で「OK」をクリックします。

所有者が追加されました。

ここで申請者へメール送信されるか動作確認します。
メールエイリアス登録処理が完了したことを想定し、SharePointを起動します。
「グリッドビューでの編集」をクリック。
「対応者」へ直接入力、「対応ステータス」をクリックし、対応ステータスを「完了」へ変更。
「メール連絡」をクリック、「連絡済み」へ変更。

「グリッドビューの終了」をクリックします。
Sharepointのリストのフィルター機能で非表示になりました。

2分~5分ほどで申請者にメールが送信されるので確認します。

まとめ
今回は備忘の意味が強かったのであまりまとまりのない文章になってしまいました。はじめてPowerAutomateを利用しましたが結構いろいろできそうで面白いなと感じました。Power Platform を駆使すればもっといろいろできるそうで今後も機会があれば挑戦したいと思います。