我有一张谷歌表格,其中有两张标签为 Sheet1 和 Sheet2 的表格。我想从第 2 行开始将 Sheet2 中的每一行和每一列与 Sheet1 进行比较。Sheet2 包含 A-F 列。与 Sheet1 相比,如果在 Sheet2 上的任何列中找到共同的单元格。我希望这一行从 Sheet2 中删除并移至 Sheet3。
例如,如果 Sheet2 中的第 56 行 D 列与 Sheet1 中的第 500 行 A 列匹配,我希望删除 sheet2 中的第 56 行并移至 Sheet3。
function myfunk() {
const ss = SpreadsheetApp.getActive();
const sh1 = ss.getSheetByName("Sheet1");
const vs1 = sh1.getRange(2,1,sh1.getLastRow() - 1,sh1.getLastColumn()).getValues();
const sh2 = ss.getSheetByName("Sheet2");
var vs2 = sh2.getRange(2,1,sh2.getLastRow() - 1, sh2.getLastColumn()).getValues();
let d = 0;
let vs3 = [];
vs1.forEach((r,i) => {
for(let j = 0;j<r.length; j++) {
let e = r[j]
if(e == vs2[i][j]) {
sh2.deleteRow(i + 2 - d++);
vs3.push(r);
break;
}
}
});
let sh3 = ss.getSheetByName("Sheet3");
sh3.getRange(sh3.getLastRow() + 1, 1, vs3.length,vs3[0].length).setValues(vs3);
}