前提・実現したいこと
Googleフォームのチェックボックスリストをスプレッドシートと連動
スプレッドシートを更新したらチェックボックスリストも更新される
発生している問題・エラーメッセージ
デバッグ・実行時にエラーは出ないがリストが更新されない。
該当のソースコード
function checkboxupdate() {
/**
// スプレッドシートの情報を取得する
//
**/
//スプレッドシートのID →「https://docs.google.com/spreadsheets/d/△△△/edit#gid=0」の△△△を↓に記述
var spreadsheet = SpreadsheetApp.openById('スプレッドシートキー');
// シート名を指定しての情報を取得
var sheet = spreadsheet.getSheetByName('List');
// スプレッドシートのA1のセルが「フォームチェックボックス」の場合
if("フォームチェックボックス" == sheet.getRange("A1").getValue()){
// A列の2行目からコンテンツをもつ最後の行までの値を配列で取得する var colA = sheet.getRange(2, 1, sheet.getLastRow() - 1).getValues();
}
/**
// Googleフォームのcheckbox内の値を上書きする
//
**/
// GoogleフォームのIDを設定 →「https://docs.google.com/forms/d/〇〇〇/edit」の〇〇〇を↓に記述
var form = FormApp.openById('フォームキー');
// 質問項目がcheckboxのもののみ取得
var items = form.getItems(FormApp.ItemType.Checkbox);
items.forEach(function(item){
// 質問項目が「根拠資料」を含むものに対して、スプレッドシートの内容を反映する
if(item.getTitle().match(/根拠資料.*$/)){
var CheckboxItemQuestion = item.asCheckboxItem();
var choices = [];
colA.forEach(function(name){ if(name != ""){ choices.push(CheckboxItemQuestion.createChoice(name)); } }); // プルダウンの選択肢を上書きする CheckboxItemQuestion.setChoices(choices); }
});
}
試したこと
https://qiita.com/kobaboy/items/610263087d9c85d8458e
以前こちらのサイトを参考にプルダウンリストの更新を試みて成功しています。
コードの「List」→「checkbox」へ変更しています。
スプレッドキー、フォームキーなど確認しましたが、解決できませんでした。
解決にご協力いただきたいです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/09 09:16