我如何在setValues函数中求解此错误“参数(number [])don' t匹配电子表格Appapp.range.setValues的方法签名&quot&quot&quot&quot&quot
我正在用AppScript预先填写Google表单,最后将URL保存在数组中。
var formCol = SpreadsheetApp.getActive().getRangeByName('FORM');
var form = FormApp.openByUrl(FORM_URL);
var items = form.getItems();
var urls = [];
for (let i = 1; i < 4; i++ ) {
var formResponse = form.createResponse();
var formItem = items[0].asTextItem();
response = formItem.createResponse(botData.id[i]);
formResponse.withItemResponse(response);
formItem = items[1].asTextItem();
response = formItem.createResponse(botData.bot[i]);
formResponse.withItemResponse(response);
var date = new Date (botData.date[i].toString());
var date2 = botData.date[i].toString();
//var day
formItem = items[3].asTextItem();
response = formItem.createResponse(botData.zone[i]);
formResponse.withItemResponse(response);
formItem = items[8].asTextItem();
response = formItem.createResponse(botData.remitent[i]);
formResponse.withItemResponse(response);
formItem = items[9].asTextItem();
response = formItem.createResponse(botData.description[i]);
formResponse.withItemResponse(response);
formItem = items[11].asTextItem();
response = formItem.createResponse(botData.solutiontime[i]);
formResponse.withItemResponse(response);
var url = formResponse.toPrefilledUrl();
//sheet.getRange(row, 31).setValue(url);
url = url.toString()
urls.push(url)
}
formCol.setValues(urls);
}
我想在Google表的“表单”列中打印每个URL,但我会收到错误”
异常:参数(number [])不匹配电子表格Appapp.range.setValues的方法签名。“当我尝试使用setValues打印数组时,我如何解决此错误?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
修改点:
urls
formcol.setValues(urls)
是1维数组。setValues(value)
的参数必须为2维数组。var formcol = dreversheetapp.getAppive()。使用getrangeByName('form');
时,范围的大小是无法知道的。因此,在您的情况下,可能需要修改urls
的值的范围。当这些要点反映在您的脚本中时,如下所示。
修改脚本:
从:
到:
或
参考:
Modification points:
urls
offormCol.setValues(urls)
is 1 dimensional array. The argument ofsetValues(value)
is required to be 2 dimensional array.var formCol = SpreadsheetApp.getActive().getRangeByName('FORM');
is used, the size of the range cannot be known. So, in your situation, it might be required to modify the range for putting the values ofurls
.When these points are reflected in your script, it becomes as follows.
Modified script:
From:
To:
or
References:
看来您正在传递
setValues
函数的错误类型的参数。根据文档。It looks like you are passing an argument that is of the wrong type for the
setValues
function. According to the documentation, you should pass a two dimensional array.