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

如何在Google Form中设置30个总座位限制,支持单提交最多订5个座位

实现Google Form总席位限制(支持单次最多订5个)的方案

可以实现,但原生Google Form的「限制响应次数」是按提交次数统计,没法直接按总席位数量限制,得靠Google Apps Script配合表格来实现,具体步骤如下:

1. 配置表单基础设置

  • 在Google Form中添加一个数字类型的问题,设置输入范围为1-5,让用户选择单次预订的席位数量
  • 关联Google Sheets作为响应存储(点击表单右上角「响应」选项卡 > 「链接到表格」),确保所有提交的预订数据会同步到表格里

2. 编写Google Apps Script

打开表单的脚本编辑器(右上角三个点 > 「脚本编辑器」),替换默认代码为以下脚本:

function onFormSubmit(e) {
  // 获取关联的表格和响应数据
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  // 这里的2代表席位数量所在的列(A=1,B=2,根据你的实际列调整)
  const seatColumn = sheet.getRange(2, 2, sheet.getLastRow()-1, 1);
  const seatValues = seatColumn.getValues();
  
  // 计算已预订的总席位
  let totalBooked = 0;
  seatValues.forEach(row => {
    totalBooked += row[0];
  });
  
  // 总席位数设置为30
  const totalSeats = 30;
  
  // 判断是否已订满
  if (totalBooked >= totalSeats) {
    const form = FormApp.getActiveForm();
    // 关闭表单,设置自定义提示文本
    form.setAcceptingResponses(false);
    form.setCustomClosedFormMessage("活动已订满,感谢您的关注!");
  }
}

注意:脚本里的seatColumn列索引要和你表格中「预订席位数量」所在的列对应,比如如果这个数据在B列,就用2,如果在C列就改成3。

3. 设置触发条件

在脚本编辑器中:

  • 点击左侧「触发器」图标(时钟形状)
  • 点击「添加触发器」,配置如下:
    • 选择函数:onFormSubmit
    • 选择部署类型:「事件源」选「表单」,「事件类型」选「当表单提交时」
    • 点击「保存」,授权脚本所需的权限

4. 测试验证

  • 提交几次测试数据,检查表格中总席位统计是否正确
  • 当总预订席位达到30时,表单会自动关闭,用户打开表单时会看到你设置的「活动已订满」提示

内容的提问来源于stack exchange,提问作者Geir Karlsen

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 01:28:15