PowerApps_社内の人の名前からメールアドレスを検索し、メール送信する方法

皆さんこんばんは!
今回はPowerAppsを使用したアプリで、社内宛てのメールアドレスをコンボボックスで検索し、メールを送信する方法です。
今回の話は前回のアプリを利用しています。
前回はすでにエクセルデータにメールアドレスが入力されていましたが、実務上では運用難しいので、今回紹介する方法のほうが利便性が高いかと思います。

今回追加使用するコネクタ・Office365ユーザー:名前でメールアドレスを検索するのに使用

作り方
1.前回の2項を参考に上記のコネクタを追加してください。

スクリーンショット 2021-05-03 150751

2.アプリ画面の作成
①入力からコンボボックスを選択
②データソースでOffice365ユーザーを選択
③コンボボックスのプロパティの
・複数選択の許可
・検索の許可
をオンにする
④コンボボックスのプロパティの
フィールドの主要なテキストとSerachFieldをDisplayNameに変更

スクリーンショット 2021-05-03 161605

スクリーンショット 2021-05-03 161626

スクリーンショット 2021-05-03 161646

3.コードの記載
①作成したコンボボックスのItemsに下記コードを入れる

Office365ユーザー.SearchUserV2({searchTerm:ComboBox1.SearchText,top:10}).value

②メール送信ボタンのonselectに下記コードを入れる

Office365Outlook.SendEmailV2(Concat(ComboBox1.SelectedItems,Mail&";"),"件名:PowerAppsから送信","<p>"&Concat(ComboBox1.SelectedItems,Mail&"様<br>")&"<br><br>"&BrowseGallery1.Selected.氏名&"の出身は"&BrowseGallery1.Selected.出身&"です。  </p>")

4.コンボボックスは下記のような感じで検索+選択可能

画像2

送信結果

スクリーンショット 2021-05-03 161950

Office365ユーザー.SearchUserV2({})の中身の説明
・searchTerm:検索する文字( display name, given name, surname, mail, mail nickname と user principal nameから検索可能)
・top:検索でヒットしたうちのいくつ表示するか

Concat(ComboBox1.SelectedItems,Mail&";")の説明
・Concat(テーブル,結合したい値)でメール宛先の文字列を作成した
・CombBoxの複数選択したデータはSelectedItemsにSearchUserV2の戻り値のテーブルが格納される
・メールアドレスは;セミコロン区切り必要

参考資料
Office365ユーザー.SearchUserV2のリファレンス
Power Apps での Concat および Concatenate 関数
SearchUserV2の戻り値


いいなと思ったら応援しよう!