我有一大堆用户,其中包含各种代码。目标是将好与坏分开。所有以P,H或F开头的代码都是好的。所有以L或K开头的代码都不好。例如:
Email | Code 01 | Code 02 | Code 03 | Code 04 | RESULT
user01@gmail.com | PJR-VRF | | | | GOOD
user01@gmail.com | | LNR-JNT | | LNR-JNT | BAD
user01@gmail.com | | HVB-YWQ | HVB-YWQ | HVB-YWQ | GOOD
user01@gmail.com | | LNR-JNT | | KVB-MMO | BAD
user02@gmail.com | | | | PHH-KLP | GOOD
user02@gmail.com | | HNR-OPT | | LNR-JNT | GOOD
user02@gmail.com | | FLT-MWQ | | FLT-MWQ | GOOD
user02@gmail.com | | KVB-MMO | KVB-MMO | KVB-MMO | BAD
换句话说,如果一个范围包含以P,H或F开头的任何单元格那么好,否则不好。我试图在结果列中使用以下公式:
=IF(COUNTIF(B2:E2,{"H*","P*","F*"}),"good","bad")
不幸的是它没有用,所以我尝试了这个:
=IF(COUNTIF(B2:E2,"H*") + COUNTIF(B2:E2,"P*") + COUNTIF(B2:E2,"F*"),"good","bad")
这似乎有效,但这是最好的方法吗?说我有20个其他条件要检查?并需要添加第三个结果?筛选这些数据的最佳方法是什么?
答案 0 :(得分:0)
您可以使用与此类似的数组公式:
=IF(SUM((--($B2:$D2<>""))*(--ISNUMBER(FIND(LEFT($B2:$D2,1),"HPF"))))>0,"GOOD","BAD")
请记得按Ctrl+Shift+Enter
以正确完成数组公式。
如果您需要添加第三个结果:
=IF(SUM((--($B2:$D2<>""))*(--ISNUMBER(FIND(LEFT($B2:$D2,1),"HPF"))))>0,"GOOD",IF(SUM((--($B2:$D2<>""))*(--ISNUMBER(FIND(LEFT($B2:$D2,1),"EKD"))))>0,"OTHER","BAD"))