如何判断另一个Google表格中是否存在某个单元格

6
我在一个Google Sheets文档中有12个工作表,每个月都有一个标签(1月-12月)。每个工作表的A列都包含一个项目编号,例如“6091”。
我正在尝试找到一种函数,可以检查所有其他工作表,以查看其他工作表的“项目编号”列中是否存在重复单元格。
因此:“列A中的任何单元格是否与其他工作表上的列A中的任何单元格匹配。”
有没有快速的方法来完成这个任务?
3个回答

2

这个公式 =arrayformula(iferror(match(A2:A, AnotherSheet!A2:A, 0))) 检查当前表格中 A2:A 中的每个值是否在 AnotherSheet 的 A2:A 中。如果存在,则返回在 AnotherSheet 中的位置,否则输出为空(通过iferror抑制错误 #N/A)。

您可以将上述公式分别用于每个表格。或者,如果您不关心位置,只想知道哪些来自 A2:A 的条目在其他地方被找到,则可以将每个表格的结果相加:

=arrayformula(iferror(match(A2:A, AnotherSheet!A2:A, 0)) + iferror(match(A2:A, ThirdSheet!A2:A, 0)))

如果没有匹配,则输出为0,如果有匹配则输出非零数字。

由于某些原因,这对我不起作用。在谷歌表格中,我会得到一个加载栏几分钟,然后只是一个空单元格(即使应该有匹配项)。我认为我应该将“AnotherSheet”更改为需要检查的其他工作表的名称,所以我有:=arrayformula(iferror(match(A2:A, April!A2:A, 0)) + iferror(match(A2:A, March!A2:A, 0)))在五月表上检查五月份是否存在于四月或三月。 - Michael

1
您可以尝试使用以下内容来查找重复项的数量:
=counta('JAN'!A:A,'FEB'!A:A)-countA(unique({'JAN'!A:A;'FEB'!A:A})

其中A:A是您要检查的数据列和相应文件。

此公式计算您拥有的总数据量减去唯一数据,因此给出您数据集中重复项的总数。

此公式为您提供重复项的总数概述,但不显示哪个单元格是重复项。

或者,您可以添加一个检查列,并输入以下公式来检查该特定单元格是否为重复项。

=match(cell to check,{range 1;range 2;...range 12})

或者,您可以使用此公式查找范围之间的确切重复项,但是此公式不会在范围内搜索重复项。

=arrayformula(filter(range to check,(countif(arrayformula({Range 1;range 2}),{range to check}))>1))

个人认为最后一个选项是最好的,因为它提供了确切的数据来进行更正。我还是新手,希望这有所帮助:)


欢迎来到SO!当您回答一个有多个答案的问题时,请尝试展示您观点的优势。 - David García Bodego
谢谢您的建议,我已经编辑了我的答案以解释过程和好处。 - edmund chan kei yun

0

这个公式适用于数值:

=COUNT(QUERY({March!A:A;April!A:A},"where Col1="&A2))

如果您正在搜索文本值,则应该是:

=COUNTA(QUERY({March!A:A;April!A:A},"where Col1='"&A2&"'"))

不幸的是,QUERY函数无法在arrayformula中工作,因此您需要将公式复制到整个列中。您可以根据需要将额外的工作表添加到{ }数组中,以分号分隔。

编辑:实际上,借鉴@sandwich的方法,这个版本应该可以在不需要复制公式的情况下工作:

=arrayformula(iferror(match(A2:A,{March!A:A;April!A:A},0)))


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接