Formsの回答をPDF化して保存する(うまくいかない方法)
解決できる課題
アンケートや申請フォームの回答を、いちいち手作業でPDFに変換していませんか? ・フォームの回答をPDFに変換している ・回答が来るたびに、画面をキャプチャしたり、印刷機能を使ったりしている ・PDFファイルの整理に時間がかかる ・ファイル名がバラバラになったり、保存場所が定まらず、後で探しにくくなる このレシピは、そんな面倒な作業を解決します。 Formsに回答が届くと、Power Automateが検知し、PDFファイルとして自動でOneDriveに保存します。 ただし、一見簡単そうに見えるこのフローには、「なぜかうまくいかない」という落とし穴があります。 このレシピでは、単なる手順書では教えてくれない、その「うまくいかない」理由と解決策を解説します。
完成イメージ

必要なもの
Forms コネクタ
OneDrive コネクタ
作り方
これは失敗例です。
同じようなやり方を考えている方は、プレミアム機能が必要になるので、導入を検討してください。
Formsから得られた回答は、標準機能でExcelへ収集されます。
Excelから資料を作成するのではなく、Formsの回答をそのままPDFにします。
- 1. トリガー「新しい応答が送信されるとき」を設定
[Form Id]には、対象となるFormsを選択します。

- 2. アクション「応答の詳細を取得する」を設定
[Form Id]は、ステップ1と同じIDを選択します。
[Response Id]は、「Response Id」を指定します。

- 3. アクション「ファイルの作成」
[Folder Path]は、ファイルの保存先を指定します。
[File Name]は、ファイル名は任意ですが、拡張子をWord/Excelのどちらかにします。
※例えば、ファイル名を回答の提出日にする場合、formatDateTime関数を使う
formatDateTime(outputs('応答の詳細を取得する')?['body/submitDate'],'yyyyMMdd')
拡張子は、Wordならdocx、Excelならxlsx
[File Content]は、Formsから得られる回答を収集するため、動的コンテンツにあるFormsの各質問を指定します。
※これが原因でうまくいきません
Formsの回答は、そのままWord/Excelには変換できません
Wordファイルにするためには、プレミアム機能の「Microsoft Word テンプレートを事前設定します」が必要です
Excelの場合、プレミアム機能は不要ですが、正しいファイルが作成されず、ファイルが開けません
Textファイルであれば、ファイル作成は可能ですが、PDF化ができません

- 4. アクション「ファイルの変換」を設定
[ファイル]は、ステップ3の「Id」を選択します。
[ターゲットの種類]は、「PDF」を選択します。

これではうまくいきません!
うまくいかないポイントを順番に見ていきます。
まず、次のようなFormsを用意したとします。

Formsの回答をWordにするフローでは、Wordにすると下図のようにエラーになります。

Formsの回答をExcelにするフローでは、下図のようにエラーになります。

Formsの回答をTextにするフローでは、txtファイルの作成に成功します。
ですが、OneDriveコネクタの「ファイル変換」機能では、txtからPDFへは変換できません。

結論
ステップ3に記載した通り、このフローを実現するためにはプレミアム機能のWord Online (Business)が必要です。
Wordのテンプレートを用意しておくとFormsの回答を設定でき、そのテンプレートに従い、正しいファイルが作成されます。
正しいWordファイルが作成されれば、PDF化の処理においてもエラーにならず、変換が成功します。