google-apps-script - 如何解决 getrange 错误“范围内的行数必须至少为 1”?
问题描述
下面的代码行抛出一个错误
var FillDownRange = bp.getRange(2, 6, lr-1);
错误信息
例外:范围内的行数必须至少为 1。
为什么我会收到此错误消息?
这是完整的功能:
function ProcessBlueprint() {
//Formula: What is the top query for the URL?
bp.getRange("F2").setFormula("=IFERROR(VLOOKUP(C2,GSC!$A$2:$F,2,false),)");
var FillDownRange = bp.getRange(2, 6, lr-1);
bp.getRange("F2").copyTo(FillDownRange);
}
解决方案
问题:
lr-1
小于1
。确保您的工作表至少有两行。
- 现在它有
0
or1
,假设它lr
是由getLastRow()计算的。
解决方案:
您可以通过简单的if
条件避免该问题:
bp.getRange("F2").setFormula("=IFERROR(VLOOKUP(C2,GSC!$A$2:$F,2,false),)");
if(lr>1){
var FillDownRange = bp.getRange(2, 6, lr-1);
bp.getRange("F2").copyTo(FillDownRange);
}
2
如果最后一行是0
or ,另一个想法是使用1
:
bp.getRange("F2").setFormula("=IFERROR(VLOOKUP(C2,GSC!$A$2:$F,2,false),)");
const fr = lr>1?lr:2;
var FillDownRange = bp.getRange(2, 6, fr-1);
bp.getRange("F2").copyTo(FillDownRange);
确保理解里面的参数getRange
代表什么:
推荐阅读
- web-api-testing - 测试 Google 安全浏览 API 的返回
- sorting - Solr 结果根据字段优先级
- javascript - 如何使我的 Firestore 搜索可重复?
- android - 代号一:隐藏标题(区域)但不隐藏状态栏空间(iOS & Android)
- python - 遍历字典中的键
- python - 本地机器无法访问 Docker 容器(Django 服务器)
- amazon-web-services - 每次在我的 AWS SQS 目标上推送通知时如何触发事件?
- python - 格式为 yy/mm/dd 的日期时间
- php - 使用 Mpdf 在第一页添加索引
- nestjs - websocket中的范围请求