概要
GoogleAppsScript(GAS)にはGASでGoogleフォームを作成する最も簡単なスクリプトにある通り、スクリプトからフォームを作成する機能があります。フォームは入力内容に応じて遷移させるページを変えることができますが、これをスクリプトで実現した場合にどう実装するかというのを紹介します。
やりたいこと
1ページ目で、2ページ目か3ページ目に遷移させるか選択します。
2ページ目ではテキストを入力します。次へを押すと4ページ目に遷移します。
3ページ目ではテキストを入力します。次へを押すと4ページ目に遷移します。
4ページ目でテキストを入力して送信します。
実装方針や注意点など
- 今回はページを指定して遷移させるようにします。遷移先のページを指定するには、後のページのオブジェクトを先に作成していく必要があるので、実装では4ページ目から作成するようにします。なお、ページ分けについてはPageBreakItemを使用します。
- 後ろからページのオブジェクトを作成していくと、当然そのままだとページの順番が逆になります。ので、前にしたいページは都度移動させていきます。ページの入れ替えについてはmoveItemメソッドを使います。
- 1ページ目の選択ではcreateChoiceに遷移先ページを指定することで、遷移先を変えることができます。GASで既存のフォームの選択肢に「回答に応じてセクション移動」を設置するにはの記事が参考になります。
- 2ページ目で4ページ目に遷移させる設定はsetGoToPageメソッドを使用します。注意点としてはsetGoToPageは設定対象オブジェクトの直前に設定されるので、3番目のページのオブジェクトで呼び出しを行います。
実装サンプル
ソースをこちらにアップしています。