将一张纸A与另一张纸B一起过滤,以获得一张新纸张C,其中包含B中不存在的行

时间:2016-06-02 03:22:21

标签: google-sheets spreadsheet google-docs

我正在尝试清除库存清单中的错误数据。

表单A是一张表格,列出了我的所有产品。

工作表B是一张由另一件软件生成的工作表,其中列出了我已售出的所有产品

我需要生成第三张表单C,列出所有未售出的产品。因此,工作表B和工作表C之间的行数应该总计为工作表A上的总行数。

如何使用B交叉引用/过滤工作表A以实现C?

1 个答案:

答案 0 :(得分:1)

以下公式返回Sheet1列A中Sheet2列A中不存在的条目列表:

=filter(Sheet1!A2:A, isna(match(Sheet1!A2:A, Sheet2!A2:A, 0)))

说明:match为Sheet1中的条目返回错误代码#N / A!A2:在Sheet2中找不到的A!A2:A。 isna函数将这些转换为True布尔值。最后,filter返回第二个参数的计算结果为True的行。

过滤器可以返回多个列:例如,它可以是

=filter(Sheet1!A2:Z, isna(match(Sheet1!A2:A, Sheet2!A2:A, 0)))

但匹配需要一维范围,因此您需要一个列(此处假设为A),该列可用作行的标识符。