search如果两个string都在单独的列在excel中存在一行?

如何使用find函数查看两个string是否存在于excel中?

EX:

row/column ABCD 1 fly cat dog fish 2 cat pig horse dog 3 zebra pig cat elephant 

我想search哪些行都包含猫和狗。 我怎样才能做到这一点?

如何使用ANDCOUNTIF一起工作:

 =AND(COUNTIF(A1:D1,"cat"),COUNTIF(A1:D1,"dog")) 

如果该行包含catdog ,则返回TRUE

如果公式返回1,则该行包含cat和dog。 如果返回0,则至less有一个从行中丢失:

 =SUMPRODUCT(MAX(--(A1:D1="cat"))*MAX(--(A1:D1="dog"))) 

如果你真的爱findfunction,虽然看起来更长。

 =AND(FIND("cat",CONCATENATE(A1,"|",B1,"|",C1,"|",D1)),FIND("dog",CONCATENATE(A1,"|",B1,"|",C1,"|",D1))) 

分隔符| 很重要!

cat + dog = catdog

ca + tdog = catdog

但添加分隔符| (或其他)不会:

cat + | + dog = cat|dog

ca + | + tdog = ca|tdog

请注意, find区分大小写。 如果不区分大小写,可以使用searchfunction。

如果您愿意在每一行上运行一个公式,那么您可以将其复制下来,并检查值“2”。

 =IF(AND(COUNTIF($A3:$D3,"cat")>0,COUNTIF($A3:$D3,"dog")>0),"Found them","") 

您可以将文字replace为单元格引用,以便您可以轻松地更改search词。 也许这样的事情:

 =IF(AND(COUNTIF($A3:$D3,$F$1)>0,COUNTIF($A3:$D3,$G$1)>0),"Found them","")