Google apps script Google应用程序脚本中事件对象变量的For循环

Google apps script Google应用程序脚本中事件对象变量的For循环,google-apps-script,Google Apps Script,再次新手在应用程序脚本我正在尝试做以下事情 如何在表单提交时将数组值存储在事件对象的变量中,即我需要将表单J中表单响应列的所有值从一行存储到一个变量中 类似var value=j,k,l,m,n,o(显然是没有任何spl字符的字符串,如,.etc) 本能地,应该有更好的方法获取变量中的所有值?尝试了一些循环,因为范围从工作表的列之间(J-AF)开始无法正确设置 函数onFormSubmit(e){ Logger.log(“%s”,JSON.stringify(e)); //从表单中获取信息并设

再次新手在应用程序脚本我正在尝试做以下事情

如何在表单提交时将数组值存储在事件对象的变量中,即我需要将表单J中表单响应列的所有值从一行存储到一个变量中

类似var value=j,k,l,m,n,o(显然是没有任何spl字符的字符串,如,.etc)

本能地,应该有更好的方法获取变量中的所有值?尝试了一些循环,因为范围从工作表的列之间(J-AF)开始无法正确设置

函数onFormSubmit(e){
Logger.log(“%s”,JSON.stringify(e));
//从表单中获取信息并设置为变量
var金额=[e.values[9]、e.values[10]、e.values[11]、e.values[12]、e.values[13]、e.values[14]、…e.values[31];
Logger.log('让我们看看它是否在这里:'+金额);
}
试试这个:

如果需要,不要忘记更改图纸名称

并创建触发器

function onFormSubmit(e) {
 var ss=SpreadsheetApp.getActive();
 var sh=ss.getSheetByName('Sheet1');
 sh.getRange(sh.getLastRow()+1,10,1,e.values.length).setValues([e.values]); 
}
来自
onFormSubmit(e)
e
对象具有以下结构:
{
authMode:{…},
名称值:
{‘问题2’:[‘答案2’],
时间戳:['3/2/2020 9:48:53'],
问题:[‘答案’]},
范围:{columnEnd:3,columnStart:1,rowEnd:6,rowStart:6},
资料来源:{},
triggerUid:'3xxxxx825600xxx',
数值:['3/2/2020 9:48:53','答案','答案2']
}
如您所见,有几个属性对您的案例非常有用。(
namedVales
values

你可以选择使用哪一种

例如:
函数onFormSubmit(e){
//从响应中获取值并将其放入命名变量中
var amountDict={
“问题2”:e.namedValues[“问题2”],
“问题”:e.namedValues[“问题”],
“Timestamp”:e.namedValues.Timestamp,
moreCols:“…”,colAB:e.namedvalue[10]
};
//记录它们
控制台日志(amountDict);
//从响应中获取值并将其放入未命名变量中
var amountList=[e.values[0],e.values[2],“…”,e.values[3];
//记录它们
控制台日志(数量列表);
}
输出:

我在2020年2月28日上午10:07:25收到这封邮件,错误类型错误:在onFormSubmit(代码:4:16)无法读取null的“getRange”属性。我想第一个问题是您是否有一张工作表1?我有不同的工作表名称,并且我在代码中更新了它,就在var ss=putLogger.log(JSON.stringify(e))和做一个表单提交并告诉分享你的日志。非常感谢,这很有帮助,我会很快发布更新的代码