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

Google Sheets列数据排布及表单图片必填上传校验方案咨询

Google Sheets关联表单图片上传校验实现方案

方案一:Google Forms + Google Apps Script(原生生态适配)

  • 先按照你Google Sheets的表头名称,在Google Forms内逐个添加对应名称的「文件上传」题型,每个题型标题和Sheets对应表头完全一致,设置为非必填(原生必填提示无法自定义展示未上传区域名称,所以用自定义脚本实现校验)。
  • 打开表单绑定的Google Sheets,点击菜单栏「扩展程序」-「Apps Script」打开脚本编辑器,替换默认代码为以下逻辑:
// 表单提交触发校验函数
function onFormSubmit(e) {
  const responses = e.namedValues;
  // 此处替换为你自己的所有区域表头名称,和表单、Sheets表头保持一致
  const requiredRegions = ["区域A", "区域B", "区域C"]; 
  const missingRegions = [];
  // 遍历所有必填区域检查是否有上传文件
  requiredRegions.forEach(region => {
    const uploadUrl = responses[region]?.[0];
    if(!uploadUrl || uploadUrl.trim() === "") {
      missingRegions.push(region);
    }
  })
  // 存在漏传时提示用户,同时删除无效提交记录
  if(missingRegions.length > 0) {
    const ui = FormApp.getUi();
    ui.alert(`以下区域图片未上传,请补传:\n${missingRegions.join("、")}`);
    const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
    sheet.deleteRow(sheet.getLastRow());
  }
}
  • 在Apps Script编辑器左侧点击「触发器」-「添加触发器」,选择触发函数为onFormSubmit,触发事件来源选「表单」,事件类型选「表单提交时」,保存并按照提示授权脚本权限即可生效。

方案二:自定义前端表单对接Google Sheets API(自定义程度更高)

  • 前端表单按Sheets表头生成对应上传区域,每个区域绑定单独的文件上传控件,同时支持单张上传、全区域批量上传。
  • 提交表单前先做前端前置校验:遍历所有区域的上传控件,判断是否有已选择的文件,收集所有未上传的区域名直接在前端弹窗提示,无需提交到后端即可完成校验,用户体验更流畅。
  • 校验通过后,调用Google Sheets API将上传后的文件链接(可存储到Google Drive或其他云存储后获取公网可访问链接)按对应列写入Sheets即可。

补充:如果需要支持批量上传自动匹配对应区域,可要求上传的图片文件名包含对应区域名关键词,批量上传后通过脚本匹配文件名和区域名,匹配失败的归入待确认列表提示用户手动关联即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 23:15:07