Apps Scriptリファレンス: Apps Script Reference |障害・課題追跡: IssueTracker |Google Workspace: Status Dashboard - Summary

2025年5月9日金曜日

Google Formsで選択肢に応じて次に表示するセクションを変えたい


Googleフォームでは回答に応じて次に進むページを分岐することができます


例えば SECTION 1で
  • 1つ目の回答を選んだらSECTION 2へ移動する
  • 2つ目の回答を選んだらSECTION 3へ移動する
このような分岐ができます




この機能は「ラジオボタン」と「プルダウン」で使えます


フォームの編集画面

STEP 1: 
SECTION 2, SECTION 3を追加します


STEP 2:
SECTION 1 〜 3 に質問を作ります


STEP 3:
一番上の質問の右下にある︙メニューで「回答に応じてセクションに移動」を選択します



STEP 4:
  • 1つ目の選択肢の右隣の「次のセクションに進む」を「セクション 2に移動」に設定します
  • 2つ目の選択肢の右隣の「次のセクションに進む」を「セクション 3に移動」に設定します




フォームの回答画面

最初の質問の選択肢によって次に開くページが異なる
  • Option 1を選択して「次へ」をクリックすると「SECTION 2」が開く
  • Option 2を選択して「次へ」をクリックすると「SECTION 3」が開く




Apps Scriptで実装する場合


Code.gs
function createBranchedForm() {
const form = FormApp.create('Branched Form');
form.setDescription('The next section will change depending on your selection');

// SECTION 1 の質問(最初に表示される)
const question1 = form.addMultipleChoiceItem();
question1.setTitle('Question in SECTION 1')
.setRequired(true); // 分岐するので必須

// SECTION 2 を作成
const section2 = form.addPageBreakItem().setTitle('SECTION 2');
form.addMultipleChoiceItem()
.setTitle('Question in SECTION 2')
.setChoiceValues(['Option 1', 'Option 2'])
.setRequired(true);

// SECTION 3 を作成
const section3 = form.addPageBreakItem().setTitle('SECTION 3');
form.addMultipleChoiceItem()
.setTitle('Question in SECTION 3')
.setChoiceValues(['Option 1', 'Option 2'])
.setRequired(true);

// 分岐先を設定(セクション作成後でないと指定できない)
question1.setChoices([
question1.createChoice('Option 1', section2),
question1.createChoice('Option 2', section3)
]);

Logger.log('編集URL: ' + form.getEditUrl());
}




Tips

回答によって分岐したいので回答を「必須」にしておきます
必須にしないと回答していない状態でも「次へ」ボタンで次のセクションに進みます



Reference

回答に応じて質問を表示する




関連記事


Latest post

スプレッドシートの空白セルを直前の値で埋めたい

A列の空白セルに直前の値を入れたくて書いたコードです スプレッドシートに以下のようなBeforeの表があるとき (A列に空白セルがある) Before 1 A B 2 エリア 都市 3 東京 新宿 4 渋谷 5 池袋 6 神奈川 横浜 7 川崎 8 相模原 9 千葉 千葉 10 ...