LANG SELRCT

Apps Script Reference  (Create: Create new Spreadsheet | Create new Apps Script

Saturday, September 14, 2019

Google Formの質問の選択肢をコードで書き換えたい


このように
「はれ」「あめ」「くもり」の選択肢がある質問で


選択肢に「ゆき」を追加してみる


実行手順
  1. 質問のIDを取得する
  2. 質問のIDを指定して選択肢を書き換える



コード.gs
function get_items() {// 1. 質問のIDを取得する
  var form = FormApp.getActiveForm();
  var items = form.getItems();
  var arrays = [];
  for (var i = 0; i < items.length; i++) {
    var obj = {};
    var item = items[i];
    obj['text'] = item.getHelpText();
    obj['id'] = item.getId();
    obj['index'] = item.getIndex();
    obj['title'] = item.getTitle();
    obj['type'] = item.getType();
    arrays.push(obj);
  }
  Logger.log(arrays);
}

function setChoiceValues() {// 2. 質問のIDを指定して選択肢を書き換える
  var itemId = 1167513156;
  var form = FormApp.getActiveForm();
  var item = form.getItemById(itemId);
  var values = ["はれ", "あめ", "くもり", "ゆき"];
  var choices = item.asMultipleChoiceItem().setChoiceValues(values);
}


まず、get_items() を実行すると

このようなログが出力されるので


この中の id=1167513156 がその質問のIDなので
(※IDは実行する環境によって異なるので自分のログに出た数値を使います)

setChoiceValues()の

var itemId = 1167513156

に入れて

setChoiceValues() を実行すると

var values = ["はれ", "あめ", "くもり", "ゆき"]
で設定した値で選択肢が作られます



関連記事

Google Formで質問の選択肢の値を取得したい

Latest post

スプレッドシートA列にある複数のテキストをスライドに追加したい(Google Apps Script)

今回Google Apps Scriptでやりたいこと GoogleスプレッドシートA列にある複数の値を取得して Googleスライドに渡して 図形オブジェクトのテキストとして追加したい ① スプレッドシートのA列に値を入れておく ② Code.gsのinsertNewShape...