0
我需要这个脚本删除注册表中与注册码相匹配的注册表的注册码。截至目前,如果“sheetR.deleteRow(i);”该脚本仅删除一行不在里面“if(regCodeR === regCodeCR){}”。它也不会删除正确的行。删除谷歌电子表格中的重复行
function rD() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheetR = ss.getSheetByName("Registration");
var sheetCR = ss.getSheetByName("Cancel Registration")
var dataR = sheetR.getDataRange().getValues();
var dataCR = sheetCR.getDataRange().getValues();
var headerRow = 1;
for (var i = 1; i in dataR && i in dataCR; ++i) {
var rowR = dataR[i];
var rowCR = dataCR[i];
var duplicate = false;
var regCodeR = sheetR.getRange(headerRow + i, 10).getValues();
var regCodeCR = sheetCR.getRange(headerRow + i, 9).getValues();
if (rowR[9] === rowCR[8]) {
duplicate = true;
}
}
if (regCodeR === regCodeCR) {
sheetR.deleteRow(i);
}
}
我在更改工作表名称后尝试了脚本,但它只删除单元格,并实际删除列中的所有单元格,而不仅仅是与其他单元格匹配的单元格。 – scollins
我不熟悉设置标志值。听起来是一个好主意。我已经搜索过它,但我找不到如何去做的任何例子。 – scollins
我只用简单的数据(一列有注册值)测试了上面的代码。请张贴示例表。也许我可以帮助你。关于Flag,你可以根据匹配将单元格值更新为true或false,并循环遍历该列,并相应地进行更改。 – KRR