You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Forms两个下拉框仅一个可同步更新,求解决方案

解决Google Forms多下拉框同步Sheet选项的问题

问题原因

你的代码只针对**第一个下拉框(formItems[0])**进行更新,所以不管复制多少个同类型的下拉问题,只有排在第一位的会同步Sheet的修改,后面的都不会被处理。调换顺序后原第二个问题变成了第一个,所以它能同步,原第一个问题移到后面就失效了,本质还是代码只处理第一个LIST项。

另外你的代码存在语法错误:FormApp.openById('(Link ID removed here)'; 末尾缺少闭合括号 ),会导致脚本运行失败,需要先补上。

修正后的代码

function updateDropdown() {
  // 获取表单和工作表
  var form = FormApp.openById('(Link ID removed here)');  // 补上缺失的闭合括号
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Choices');

  // 获取Sheet中的选项数据
  var data = sheet.getRange('A:A').getValues();  
  var items = data.flat().filter(String);
 
  // 获取表单中所有下拉类型的问题
  var formItems = form.getItems(FormApp.ItemType.LIST);

  // 遍历所有下拉问题,逐个更新选项
  formItems.forEach(function(listItem) {
    listItem.asListItem().setChoiceValues(items);
  });
}

改动说明

  • 移除了只处理第一个下拉框的逻辑,改用forEach循环遍历所有LIST类型的表单问题
  • 对每个下拉问题都调用setChoiceValues(items),确保所有同类型下拉框都同步Sheet中的选项
  • 修复了openById行的语法错误

内容的提问来源于stack exchange,提问作者Mark R

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 15:52:11