2016-11-03 70 views
0

我正在尋找列A的公式(TRUE或FALSE)。我檢查列「C」是否包含「錯誤」文本。行號2(單元格「C2」)包含「錯誤」字,因此公式在列「A」中放入「TRUE」。現在我有每行的公式:= ESTNUM(謝爾什( 「ERROR」; $ C2))在法國= ISNUMBER(SEARCH( 「ERROR」; $ C2))Excel公式多條件多行

FALSE DPS-14 OK 

TRUE  DPS-14 ERROR 

FALSE DPS-15 OK 

FALSE DPS-14 OK 

我想爲我的公式添加一個條件。如果列「B」中的元素在列「A」上具有「TRUE」,則將所有相同元素更改爲(「TRUE」)。 DPS-14(第2行爲TRUE),第1行第3行也爲「TRUE」,因爲第1,2和3行在列「B」上的值相同。

TRUE  DPS-14 OK 

TRUE  DPS-14 ERROR 

FALSE DPS-15 OK 

TRUE  DPS-14 OK 
+0

你有沒有嘗試在那裏添加一個'Or()'語句? – BruceWayne

+0

@BruceWayne,我想用一個Or()但是用什麼? – sgrillon

回答

1

我會用快速的COUNTIFS解決這個問題。

=COUNTIFS($B$2:$B$5, B2, $C$2:$C$5, "ERROR") > 0 

Here's a Picture!

基本上,它只是通過一系列像本身以外的價值只在當前值上你就行,支票,然後計算與該值相關聯的錯誤的數量。如果它大於零,則至少有一個點發生錯誤,所以記錄有錯誤。

還有第二個簡單的選擇。如果您可以對數據進行排序,請先按ID排序,然後按照錯誤還是OK(降序)排序。然後,如果您在OK/ERROR列中調用了索引/匹配,並且它是ERROR,那麼您知道所有記錄都需要爲bool TRUE。

That looks like this!

我知道在你的數據,該列不字面上說錯誤,所以你需要修改這個要麼使一個輔助柱以提取記錄有錯誤的值,或使用使用其他公式的數組公式。我建議選擇1,因爲它是一個更高性能的解決方案,更有可能被其他人看到你的工作所理解。

+0

與COUNTIFS的解決方案是好的!但如果訂單不同(「ERROR」不在1日),INDEX和MATCH的解決方案是KO。 – sgrillon

+0

Joe,如果我想通過包含「ERROR:...」的方式更改=「ERROR」是可能的嗎? – sgrillon

+1

喬,我用你的幫助在我的解決方案,但我仍然有一個小問題:http://stackoverflow.com/questions/40419476/excel-formula-mutiple-condition-on-more-one-row-on-conditional-格式 – sgrillon