我管理的Google表格列表有时超过10,000行。对于行数最多为5,000的工作表,下面提到的删除重复项功能可以正常工作。但是对于超过5,000的任何内容,我都会收到“超出最大执行时间”错误。我希望能获得一些有关如何提高代码效率的说明,即使对于具有10k +行的工作表也可以平稳运行。
function removeDuplicates() {
var sheet = SpreadsheetApp.getActiveSheet();
var data = sheet.getDataRange().getValues();
var newData = new Array();
for(i in data){
var row = data[i];
var duplicate = false;
for(j in newData){
if(row.join() == newData[j].join()){
duplicate = true;
}
}
if(!duplicate){
newData.push(row);
}
}
sheet.clearContents();
sheet.getRange(1, 1, newData.length, newData[0].length).setValues(newData);
}
Run Code Online (Sandbox Code Playgroud)