2016-11-09 75 views
0

我有一個用戶的各種代碼的大名單。目標是將好東西與壞東西分開。所有以P,H或F開頭的代碼都很好。所有以L或K開頭的代碼都不好。例如:最好的Excel方法來查找範圍內的數組?

Email    | Code 01 | Code 02 | Code 03 | Code 04 | RESULT 
[email protected] | PJR-VRF |   |   |   | GOOD 
[email protected] |   | LNR-JNT |   | LNR-JNT | BAD 
[email protected] |   | HVB-YWQ | HVB-YWQ | HVB-YWQ | GOOD 
[email protected] |   | LNR-JNT |   | KVB-MMO | BAD 
[email protected] |   |   |   | PHH-KLP | GOOD 
[email protected] |   | HNR-OPT |   | LNR-JNT | GOOD 
[email protected] |   | FLT-MWQ |   | FLT-MWQ | GOOD 
[email protected] |   | 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

變化L到F表示在這方面好碼* – bzimor

+0

對不起,應該讀取_P,H或F_。 – Josh

+0

請澄清* 20其他條件檢查/第三個結果*。 – pnuts

回答

0

您可以使用類似這樣的數組公式:

=IF(SUM((--($B2:$D2<>""))*(--ISNUMBER(FIND(LEFT($B2:$D2,1),"HPF"))))>0,"GOOD","BAD")

請記得按Ctrl+Shift+Enter以正確完成數組公式。

如果您需要添加第三個結果是:如果範圍包含與P,H開頭的所有細胞,或L那麼好*:

=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"))

相關問題