▽概要
・会社で年1回の教育を実施している
・問題を出題し、満点を取るまで何度でも受験する必要がある
・満点をとれなかった人に対して、再受験の案内をメールで出す
(メールは去年まで人がFormsの結果を見て手動で出していた。らしい。。)
という状況らしく、これはPowerAutomateでどうにかできるだろうと思い、
業務フローの見直しをしました。
とりあえず、
満点を取った人:満点とったよ!という通知をメールで送りたい
満点じゃない人:再試験してね!という通知をメールで送りたい
が実現できればOK👍
▽Formsクイズ作成
▽PowerAutomateフロー図
Formsへの回答をトリガーにフローを作成していきます。
”新しい応答が送信されたとき”に先ほど作成したクイズを指定します。
”応答の詳細を取得する”で情報を取得します。
”変数を初期化する”でスコアを用意し、0(初期値)に設定します。
※キャプチャ内の翻訳が終わってますが、typeは”String”にしてます。
条件には、Formsの1問目が”変数1”(1問目の解答)と等しいを設定します。
真(正解)だった場合、”変数を初期化する”(スコア)に得点を加算するように設定します。
偽(不正解)だった場合は、何もしないです。
問題の数だけ条件と”変数を初期化する”(スコア)への加算を追加します。
最後に、”変数を初期化する”(スコア)が100点ではない人に対して、「不合格だよ」っていうメールを送信し、100点の人には「合格だよ」というメールを出す条件を追加します。
メールの送信条件については、
条件:”変数を初期化する”(スコア)が100と等しくない
正:再試験用のメール送信する
偽:合格通知をメールで送信する
こんな感じで設定して、Formsでテスト回答をしてみて、メールがちゃんと届けばOK!という感じです。
【参考】通知メール一例
宛先:回答者のメールアドレスの変数
件名:合格or不合格ですよ(回答送信時間:時間用に変数を設定します)
本文:本文先頭に、回答提出者のOutlookアカウントの表示名を変数で設定します
【参考】全体図
①新しい回答が送信されたとき:FormsのIDを指定
②応答の詳細を取得する:
③変数の初期化:スコア用に変数を用意し、初期値(0)を設定
④変数1の初期化:1問目の解答を文字列で指定
⑤条件1:1問目の解答を指定
⑥真:スコア(③)に50点追加
⑦偽:なにもしない
⑧条件2:2問目の解答を指定
⑨真:スコア(③)に50点追加
⑩偽:なにもしない
⑪条件:スコア(③)=100
⑫真:メール出す(合格だよ!)
⑬偽:メール出す(不合格だよ!)
やってみた感想
去年は年1回の教育の問題作成だけ携わっていたのですが、
担当部署の業務フローを聞いて、今年は業務フローの見直しまで携わらせてもらいました。
業務フローは担当部署に、「ちょっとこんなの作って」って言われて、サクッとプロトタイプ用意しました。
メール本文に名前入れたいとかForms提出時間入れたいとか、
なんかいろいろ修正して、完成させました。
実のところFormsのクイズで複数回答必須で問題作りたかったのですが、
PowerAutomateの条件をどうやって作れば良いかわからず、一問一答形式であきらめました。
また来年検討します。。。ということで終わり。