关于Google表格:可以在Sheet2中的范围/数组中搜索Sheet1中的值并返回在Sheet2中找到但不在Sheet1中找到的值的公式?

Formula to search a range/array in Sheet2 for values in Sheet1 and return values found in Sheet2 but not in Sheet1?

我有三张纸。 Sheet1包含一列数据(玩家名称),Sheet2包含彼此相关联的玩家名称数组,Sheet3当前为空白。我想弄清楚在Sheet3中使用什么公式在Sheet2的数组中搜索不在Sheet1的列中的所有名称,然后返回在Sheet 3的A列中的名称。很重要。

我不确定采用哪种公式;索引/匹配似乎不符合要求,VLookup也是如此。


您可以使用数组MATCH返回仅包含未出现在Sheet1中的单元格的数组(其他单元格将为空白):

=ArrayFormula(IF(ISNA(MATCH(Sheet2!A:E,Sheet1!A:A,0)),Sheet2!A:E,))

然后您将在此处遇到主要障碍,即将2D范围转换为单个值列。这可以通过以下方式实现:

=ArrayFormula(TRANSPOSE(SPLIT(CONCATENATE(IF(ISNA(MATCH(Sheet2!A:E,Sheet1!A:A,0)),Sheet2!A:E,)&CHAR(9)),CHAR(9))))

然后,如果您愿意,可以将其转换为唯一值:

=ArrayFormula(UNIQUE(TRANSPOSE(SPLIT(CONCATENATE(IF(ISNA(MATCH(Sheet2!A:E,Sheet1!A:A,0)),Sheet2!A:E,)&CHAR(9)),CHAR(9)))))