删除 Google Sheet 中的重复值

Remove duplicate values in Google Sheet

我有 google sheet 超过 500 行并且经常更新。我喜欢做的是,如果特定列 (E) 中有重复值,我想自动删除整行 (06) 或动态提取唯一值,包括该行中的其他值,然后将其粘贴到另一个地方。例如,到另一个 sheet.

更新 1

我可以从列 (E) 中获取唯一值,但无法将其他值带入其中。我正在使用 =unique(E:E) 函数过滤唯一值,并尝试使用此函数引入其他值。 =VLOOKUP(I1,A:G,COLUMN(E:E),FALSE) 但它不起作用。
我怎么能fix/do这个?

示例 Sheet:https://docs.google.com
我想要什么...(全尺寸图片:https://i.stack.imgur.com/kn2oU.png)

我得到了什么(全尺寸图片:https://i.stack.imgur.com/7QZGU.png)

-谢谢。

文档有 Tutorial: Removing Duplicate Rows in a Spreadsheet

本教程的目的是在您希望在 G Suite 中自动执行复制数据的过程时避免重复,特别是如何删除电子表格数据中的重复行。

此外,还有一个可以使用的工作代码。

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);
}

其他开发者测试过的实时示例,您可以参考this Stack exchange post

VLOOKUP 的正确语法(在找到唯一值之后)将是:

=ARRAYFORMULA(IFERROR(VLOOKUP(I:I,{E:E,A:G},COLUMN(A:G)+1,0)))
  • 第 I 列将包含使用 UNIQUE 公式的 UNIQUE 值
  • 范围内的第一列应该是 E:E。因此,使用 {E:E,A:G}
  • 创建的新数组
  • INDEX 也应该是一个数组。使用 COLUMN 创建一系列 {1,2,3...}

或者,您可以使用过滤器:

=FILTER(A:G,MATCH(E:E,E:E,0)=ROW(E:E))