Formsのクイズの採点をPower Automateで処理する方法

2/06/2021

Forms Microsoft Edge Power Automate

Formsからカスタムリストに転記するフローは、応用が利くので覚えておくと便利使い方の1つです。Microsoft Forms で投稿したら台帳(SharePointのカスタムリスト)に反映するフローを作成する という記事でもまとめさせていただきました。


ちょっとした小テストが複数あるので、Formsで作成し、点数を自動で1つのカスタムリストに集約したいなと思い、クイズを使うことを思いつきました。

Formsの「クイズ」で同じように転記する処理を作り、でクイズの点数もカスタムリストに転記できるかと思ったのですが・・・なんと点数は反映できません。フローの処理を作って回避する方法をまとめてみました。

クイズとカスタムリストを作成する

Formsでクイズとカスタムリスト作ります。とりあえず、今回はこんな感じで。

カスタムリストには、回答者名、テスト名、点数列という3の列を用意しています。

「変数」を使います

Formsの採点結果はフローでは扱えません。しかし、採点したいです。なので「変数」を利用します。変数を使うとPower Automateで実現できることが増えます。

とはいえ、「変数」という言葉をを聞いたことがない人もおられると思います。詳しいことは置いといて「とりあえず仮に当たり置いておくための入れ物」と思ってください。

フロー内に採点する処理を作る

テスト結果を採点する処理を作成します。




1.Formsで新しい応答があったらトリガーと、詳細を取得するアクションを追加します。Formsを使う場合のお約束ですね。


2.続けて、採点結果を仮置きするために「変数_採点結果」を作成します。1問採点するたびびに採点結果に点数を足していきます。まだ1問も採点していませんから0点からスタートです。


3.問1を採点します。分岐で「問1の回答が正解(今回はA)だった場合は」を作ります。「はい」の場合は「変数の値を増やす」アクションを使って、「先ほど作成した変数_採点結果」に加算するようにします。
いいえ、の場合は処理を作成しません。


4.続けて、問2以降の採点する処理をつくります。上記の、3の採点&変数の値を増やす、で作ります。先ほどと同じですね。採点するたびに、「変数_採点結果」に値が増えていきます。不正解なら変数の値は変わりません。



5.最後に、カスタムリストに転記する処理を作ります。

まとめ

テストが1つだけなら、Formsのクイズの結果を「エクセルにエクスポート」すれば点数も表示されます。

しかし、テストが複数ある場合、この方法なら1つのリストにためていくことができます。Formsのクイズでの点数をフローで利用できれば良いのですが現時点ではできないようですが、この方法であればテスト結果をリストに集約できます。

リストに点数が格納できたら、通知に使うもよし、テスト結果の分析に使うもよし、幅が広がります。

複数選択肢を入れる場合は、この投稿の手順では難しいですが、わたるふさんこちらの記事が詳しいです。ご紹介、ありがとうございました。

Microsoft Forms で作ったクイズの得点をPower Automate で使用する - Qiita