Excel公式 - 根据不同列的行中的特定值查找值是否出现在列中

时间:2015-05-01 11:46:56

标签: excel-formula

我正在努力寻找能够返回"是"或"不"根据相同行的不同列上的单元格值是否与特定值匹配的列。例如,

A列包含不同的样本日期。 B列包含针对每个不同样本日期的样本参考P1,P2,N3,N3。 C栏包含样本结果"是","否"或" N / S"。

在第二个工作表中,我有一个摘要表。 A列包含四行的P1,P2,N3和N4。

B栏需要这个公式 - "是"如果第一个工作表中C列中的任何单元格包含"是"第一个工作表中A列的P1或者#34; No"如果细胞包含"否"或" N / S"。希望我能让这个测试清楚吗?例如,如果第一个工作表的数据表包含以下内容:

Column A    Column B    Column C
14/04/2015  P1          Yes
14/04/2015  P2          No
14/04/2015  N3          No
14/04/2015  N4          No
03/05/2015  P1          N/S
03/05/2015  P2          No
03/05/2015  N3          Yes
03/05/2015  N4          No
16/06/2015  P1          N/S
16/06/2015  P2          No
16/06/2015  N3          N/S
16/06/2015  N4          No

第二个工作表上的摘要表将返回:

Column A    Column B
P1          Yes
P2          No
N3          Yes
N4          No

为了使事情稍微复杂一点,公式需要按列而不是特定单元格工作,因为它需要作为多个测试的模板工作,并且每个测试可能具有不同数量的日期和/或样本引用数量。我尝试了多种IF与AND的组合,如果使用OR和AND并尝试了INDEX,但我无法找到适用于不同数据集的答案。我确信excel可以做到这一点,我只是凭借我有限的知识而耗尽了想法。

2 个答案:

答案 0 :(得分:0)

因此,您可以将以下公式放在Sheet2

中的 B2 单元格中
=IF((IFERROR(INDEX(Sheet1!C:C,MATCH(1,(Sheet1!$B:$B=$A2)*(Sheet1!$C:$C="Yes"),0)),"No")="Yes"),"Yes","No")


这是一个数组公式,所以按 ctrl + shift + 输入来计算公式。< /强>

然后复制并填写,直到 B5

在公式中,Sheet1指的是包含三列初始表的工作表。

答案 1 :(得分:0)

我用这个来管理它......

=IF(COUNTIFS(Sheet1!B:B,A2,Sheet1!C:C,"Yes")=0, "No", "Yes")

基本上在2个范围内做COUNTIF

范围1:找到所有“P1”(或“P2”,“N3”等) - A2指向您的第二张,列一个。 范围2:查找所有“Yes”...

COUNTIFS对那些人做了一个AND,所以他们都必须是真的...... 检查计数,0 =否......其他任何=是。 ;)