You need to enable JavaScript to run this app. Google Sheets提交表单报ReferenceError: shUserForm is not defined错误求助
优惠活动
大模型
产品
解决方案
定价
更多

Google Sheets提交表单报ReferenceError: shUserForm is not defined错误求助

问题解决说明

错误原因

ReferenceError: shUserForm is not defined报错由变量大小写不匹配导致:
在submitData函数头部定义的变量为shUserForm(字母F大写),但后续给Database工作表写入数据的12行代码中,全部写成了shUserform(字母f小写),Google Apps Script严格区分大小写,因此识别为未定义变量。

修复方案

把submitData函数中所有写入数据库部分的shUserform全部替换为shUserForm即可,修正后的对应代码段如下:

// 修正后的写入数据库代码
datasheet.getRange(blankRow, 3).setValue(shUserForm.getRange("C7").getValue()); //Street #
datasheet.getRange(blankRow, 4).setValue(shUserForm.getRange("C9").getValue()); //Prefix
datasheet.getRange(blankRow, 5).setValue(shUserForm.getRange("C11").getValue()); //Street Name
datasheet.getRange(blankRow, 6).setValue(shUserForm.getRange("C13").getValue()); //suffix
datasheet.getRange(blankRow, 7).setValue(shUserForm.getRange("C15").getValue()); //city
datasheet.getRange(blankRow, 8).setValue(shUserForm.getRange("C17").getValue()); //state
datasheet.getRange(blankRow, 9).setValue(shUserForm.getRange("C19").getValue()); //County
datasheet.getRange(blankRow, 10).setValue(shUserForm.getRange("C21").getValue()); //Zip
datasheet.getRange(blankRow, 2).setValue(shUserForm.getRange("C24").getValue()); //Property Type
datasheet.getRange(blankRow, 11).setValue(shUserForm.getRange("C26").getValue()); //Year Built
datasheet.getRange(blankRow, 12).setValue(shUserForm.getRange("C28").getValue()); //Sqft
datasheet.getRange(blankRow, 13).setValue(shUserForm.getRange("C30").getValue()); //bed
datasheet.getRange(blankRow, 14).setValue(shUserForm.getRange("C32").getValue()); //bath

优化建议

  • 可将重复的getRange操作封装为数组批量处理,减少冗余代码,提升执行效率
  • 可新增工作表名称校验逻辑,避免手动修改工作表名后出现找不到工作表的报错

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.14 18:45:05