Power Automate Formsで複数選択した回答をSPOリストの複数選択肢列に格納する

スポンサーリンク

やりたいこと

Formsにこんな感じで複数選択可能な質問があって
上のFormsで選択された回答を、SPOリストの複数選択可能な選択肢列に入れてみる。

Formsで複数選択したときに受け取れる文字列

まずはいつも通りFormsの応答の詳細を取得するよう設定し、
こんな感じで回答すると、
こういう文字列がFormsから送られてくることがわかる

文字列を整形する

Formsから渡される文字列

[\"オプション1\",\"オプション3\"]

のなかの「 ” 」と「 [ 」と「 ] 」が邪魔なので、replaceを使ってこんな感じで消してあげる。

中身はこんな感じ。

replace(replace(replace(outputs('応答の詳細を取得する')?['body/rb4db979a12e14bd5960393b9929df892'],'[',''),']',''),'"','')
するとこんな文字列が取れる

で、この文字列をSPOリストの複数選択肢列に入るよう整形していく。

SPOリストの複数選択肢列に入るようデータを操作する

整形にはデータ操作の「選択」を使用する。

まずは「開始」にはSplit関数を使ってさっきの文字列変数を分割した配列をいれてあげる。

splitの中身はこんな感じ。

split(variables('str'),',')
そしてマップに「Value」と「item関数」を使ってSPOの複数選択肢列に入るよう整形してあげる。
するとこんな感じで出力してくれる。

SPOリストに入れる

項目の作成アクションでSPOリストにつないで、複数選択の列で右上のボタンを押す。
そして、複数選択肢列にさっきの出力値を入れてあげる。
これで完成!

動かしてみる

まずはこんな感じで複数選択して「送信」すると、
こんな感じでSPOリストアイテムができる。
続いて1つだけ選択してみると、
こんな感じでできる。
最後、何も選択しなければ
こんな感じにできあがる!

コメント

タイトルとURLをコピーしました