Excel:如果函数按两列过滤表,并查看第三列是否具有多个唯一值

我试图根据数据表来确定客户(客户A)是否在同一天购买了苹果和香蕉。 A列标识客户,B列是客户购买的日子,C列是他们购买的水果。 我只是想要一个IF语句,指出是否在任何一天,指定的客户购买了苹果和香蕉。 换句话说,对于一个特定的客户,我想要一个输出单元格来表明是“是”,指定客户购买苹果和香蕉的date,或者没有。

Customer Date Fruit Purchased A 2016/09/08 Apples B 2016/09/09 Apples C 2016/08/10 Apples A 2016/09/08 Bananas B 2016/08/12 Bananas C 2016/09/13 Bananas A 2016/09/13 Apples 

鉴于上表,如果我指定客户A作为我的客户,则公式应该指出“是”,因为客户A在2016年9月8日购买了苹果和香蕉。

在D列中是这样的:

 =IF(COUNTIFS(A:A,A2,B:B,B2,C:C,"Bananas")+COUNTIFS(A:A,A2,B:B,B2,C:C,"Apples")>=2,"Yes","No") 

使用“数组公式”可能是最简单的方法:

input以下内容,而不是只按Enter键,使用Ctrl + Shift + Enter。 如果你不使用Control + Shift + Enter,那么每行都会出现“NO”。

 =IF(SUM(IF(A$2:A$8=A2,IF(B$2:B$8=B2,IF(C$2:C$8=C2,1,1),0),0))>1,"YES","NO")