我已经编写了一个代码,可以在行数大于100行后使用app脚本自动清除我的Google电子表格。我使用1分钟触发器来激活代码。行数已超过2000但尚未触发代码。我试过调试并得到以下错误:
这些行超出范围。 (第10行,文件"代码")
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
// This logs the value in the very last cell of this sheet
var lastRow = sheet.getLastRow();
function a()
{
if(lastRow>=996)
{
sheet.deleteRows(3, lastRow-1);
}
}
答案 0 :(得分:1)
您正尝试从第3行删除总行数(lastrow -1)。
因此,如果总行数为1000,那么您尝试从第3行开始删除999行,这就是您收到错误的原因。
请尝试以下代码:
function a() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var lastRow = sheet.getMaxRows();
if(lastRow>100) {
sheet.deleteRows(101, lastRow-100);
}
};