Google 表格 - 比较两个表格列并将不匹配的值附加到第一列

帕万

在一个 Google 工作表工作簿中,假设我有 Sheet1,其中有 5 行作为
Sheet1

我有 Sheet2 作为Sheet2

我正在寻找将不匹配的行(在 Sheet2 中但不在 Sheet1 中的行)并将这些单元格附加到 Sheet1 中的单元格下方的东西。

Sheet1 中的预期结果:预期结果

Tanaike

在您的情况下,以下示例脚本怎么样?

示例脚本:

function myFunction() {
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const [sheet1, sheet2] = ["Sheet1", "Sheet2"].map(s => ss.getSheetByName(s));
  const lastRowSheet1 = sheet1.getLastRow();
  const sheet1Obj = sheet1.getRange("A2:B" + lastRowSheet1).getValues().reduce((o, [a]) => (o[a] = true, o), {});
  const sheet2Values = sheet2.getRange("A1:A" + sheet2.getLastRow()).getValues();
  const values = sheet2Values.filter(([a]) => !sheet1Obj[a]);
  if (values.length == 0) return;
  sheet1.getRange(lastRowSheet1 + 1, 1, values.length, 1).setValues(values);
}
  • 运行此脚本时,会检查“Sheet1”和“Sheet2”的值。当“Sheet2”的“A”列的值不包含在“Sheet1”的“A”列的值中时,这些值将附加到“Sheet1”的“A”列。我认为这是您期望的目标。

笔记:

  • 如果更改工作表名称,请修改["Sheet1", "Sheet2"].

参考:

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章