前提・実現したいこと
Google Formの ドロップダウンリストにスプレッドシートのデータを反映させるスクリプトで 一部のスクリプトは反映され 一部は反映されずにいます
以下のソースコードで 作業名1のリストはフォームに反映されるのですが 作業名3のリストは反映されません
両者の違いは リスト名のみで 他のコードはすべて同じです
反映されるスクリプトをコピペして貼り付けただけなのですが なぜか 反映されず エラー表示はありません
現在は スプレッドシートの 作業名というシートの作業名リストを フォームのリストに反映させていますが フォームの作業名リストは1~10まで 作成しており それらのフォームリストすべてに スプレッドシートのデータを反映したのですが 反映されるのは 作業名1と 作業名10のフォームリストのみで 2~9が反映されません
反映させるにはどうすればいいでしょうか?
エラーメッセージはありません
該当のソースコード
function myFunction() { // 設定しているスプレッドシートを取得('▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲'の部分はスプレッドシートのIDを設定) const spreadsheet = SpreadsheetApp.openById('▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲'); // 設定しているシートを取得 const sheet = spreadsheet.getSheetByName('作業名'); // 配列で設定されているリストを取得 const fruitList = sheet.getRange(2, 1, sheet.getLastRow() - 1).getValues(); // Googleフォームを開く const form = FormApp.getActiveForm(); // リストタイプの質問だけを取得 var items = form.getItems(FormApp.ItemType.LIST); items.forEach(function(item){ // 質問のタイトルでリストを設定する質問かチェック if(item.getTitle() == '作業名3') { // 質問のリストアイテムを取得 var listItemQuestion = item.asListItem(); var choices = []; fruitList.forEach(function(fruits){ // @ts-ignore if(fruits != ""){ // @ts-ignore choices.push(listItemQuestion.createChoice(fruits)); } }); // プルダウンの選択肢を上書きする listItemQuestion.setChoices(choices); } }); }
試したこと
グーグルフォームの連携を解除して 新たにスクリプトを作成し直しましたがだめでした
補足情報(FW/ツールのバージョンなど)
GASを使っています
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。