javascript - 在 Google App Script 上创建具有不同数据范围的对象
问题描述
我想创建一个函数来创建 2 个不同的对象,这些对象具有来自工作表的不同数据范围。但它说:
异常:参数(字符串,字符串,字符串,字符串,字符串,字符串,字符串)与方法签名不匹配,SpreadsheetApp.Sheet.getRangeList.
因为错误来自变量 let data_Spiceblend
PS:我只是编程的初学者,所以如果你觉得这个问题很愚蠢,我很抱歉:/这就是我所做的:
let sheet = openSheet("Spices list");
let data_SpiceBlend = sheet.getRangeList('B67:B83','B85:B86','B88:B114','B116:B134','B136:B147','B149:B154','B156:B223','B225').getValues();
let data_SpiceMix = sheet.getRange("B21:B65","B232:B242").getValues();
let blend_Obj = {};
let mix_Obj = {};
let blendSku = data_SpiceBlend[0];
let mixSku = data_SpiceMix[0];
let blendContent = [];
let mixContent = [];
for (let row of data_SpiceBlend) {
obj[blendSku] = blendContent;
blendSku = row[0];
blendContent = [];
}
for (let row of data_SpiceMix) {
obj[mixSku] = mixContent;
mixSku = row[0];
mixContent = [];
}
blend_Obj[blendSku] = blendContent;
mix_Obj[mixSku] = mixContent;
model.blend = blend_Obj;
model.mix = mix_Obj;
}
解决方案
回答:
该getRangeList()
方法采用范围数组,指定为字符串。
代码更改:
let data_SpiceBlend = sheet.getRangeList('B67:B83','B85:B86','B88:B114','B116:B134','B136:B147','B149:B154','B156:B223','B225').getValues()
应该:
let data_SpiceBlend = sheet.getRangeList(['B67:B83','B85:B86','B88:B114','B116:B134','B136:B147','B149:B154','B156:B223','B225']).getRanges().getValues()
注意[]
封装 A1 符号列表。
推荐阅读
- php - WooCommerce 自定义运输方法插件,可根据多个标准返回运费
- excel - 有时从 Excel 中读取提示而不是字符串
- graphql - 为什么阿波罗服务器自定义指令不起作用?
- reactjs - React 循环遍历地图和显示组件
- pandas - 如何获取 2-dim numpy 数组对的 topK 项?
- python - 如何更改 Django ImageField 中的默认图像位置?
- typescript - Typescript - 从映射中替换类型属性名称
- excel - 使用 Powershell 在 Excel 列中添加时间戳
- javascript - 验证登录页面 - 如果密码正确则返回主页,如果不正确则留在同一页面
- python - 在 Raspberry Pi 上运行 FLASK 的 NGINX 服务器