Google apps script 存档脚本正在存档2行而不是一行
我使用的脚本的工作原理是,识别我在第16列的下拉框中选择了“存档”,然后将该行粘贴到另一个选项卡上,并将其从主跟踪器中删除 我遇到的问题是,它有时会归档2行而不是1行。我似乎在这里面找不到一个共同点,同样的脚本在其他文档中也没有问题 有人能看到我遗漏的错误吗 谷歌电子表格: 如果有区别的话,我还设置了另外两个,在下拉栏中查找“离开者”和“撤回申请”。这三个脚本都是单独的脚本,具有单独的触发器(编辑时)Google apps script 存档脚本正在存档2行而不是一行,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我使用的脚本的工作原理是,识别我在第16列的下拉框中选择了“存档”,然后将该行粘贴到另一个选项卡上,并将其从主跟踪器中删除 我遇到的问题是,它有时会归档2行而不是1行。我似乎在这里面找不到一个共同点,同样的脚本在其他文档中也没有问题 有人能看到我遗漏的错误吗 谷歌电子表格: 如果有区别的话,我还设置了另外两个,在下拉栏中查找“离开者”和“撤回申请”。这三个脚本都是单独的脚本,具有单独的触发器(编辑时) 函数onEdit(){ var sheetnametwatch=“跟踪器”; var colu
函数onEdit(){
var sheetnametwatch=“跟踪器”;
var columnNumberToWatch=16;//列A=1、B=2等。
var valueToWatch=“存档”
var sheetnametomovetherowt=“存档”;
Logger.log(valueToWatch);
var ss=SpreadsheetApp.getActiveSpreadsheet();
var sheet=SpreadsheetApp.getActiveSheet();
var range=sheet.getActiveCell();
如果(sheet.getName()==sheetNameToWatch&&range.getColumn()==columnNumberToWatch&&range.getValue()==valueToWatch){
var targetSheet=ss.getSheetByName(sheetnametomovetherowt);
var targetRange=targetSheet.getRange(targetSheet.getLastRow()+1,1);
sheet.getRange(range.getRow(),1,1,sheet.getLastColumn()).moveTo(targetRange);
sheet.deleteRow(range.getRow());
}
}
感谢您提供的示例
我测试了你的电脑,它没有给我任何错误
程序如下:
如果我每秒点击10次,这对我来说不起作用。你能分享电子表格示例(url)吗?我无法重现您的错误,但我现在看到的是,
getLastRow()+1
可能会给您带来错误,因为最后一行是最后一行,而您正在访问未定义的范围?我尝试取出+1以查看这是否有影响,但仍然会发生相同的错误。似乎不合理的是,这在某些行上发生,但在其他行上没有发生。您能分享一下电子表格示例吗?我无法重现错误,因为对我来说,它在没有+1
等待您的响应的情况下运行良好