[英]How to create complex nested If statement in Excel?
我在Excel中有一個If公式,如下所示:
=IF((Q2="O")*AND(R2="O")*AND(S2="O")*AND(T2="O")*AND(U2="O"),"O","X")
基本上,如果單元格Q2至U2為O,則具有公式的單元格將寫入O。 否則它將具有X。現在由於新條件,我想將其更改為嵌套的If語句。
這些條件依次為:
如果單元格Q2到U2中的任何一個= X,則單元格= X
如果單元格Q2到U2中的任何一個=日期格式,則單元格= ∆
如果Q2至U2 = O,則單元格= O
如果不滿足任何條件,則該單元格的值為“ FALSE”。 (默認顯示)
每個單元都有此條件,
我嘗試在原始公式中切換為Or來測試條件1和3。
=IF((Q2="O")*or(R2="O")*or(S2="O")*or(T2="O")*or(U2="O"),"O","X")
但這是行不通的。 另外,我也不知道如何做條件5。 有什么幫助嗎?
僅使用Excel公式是否可以做一些復雜的事情? 還是我需要進入VBA?
如果按優先級順序解決問題,通常這樣的事情會更容易。 看起來1具有最高優先級:
=IF(COUNTIF(Q2:U2,"X")>0,"X","Does not contain X")
COUNTIF(Q2:U2,"X")
返回X
在Q2:U2
范圍內的出現次數。
代替“不包含X”,我們可以首先檢查條件2:
=IF(SUMPRODUCT(--ISNUMBER(Q2:U2))>0,"∆","Does not contain X or dates")
excel中的日期實際上是帶有裝飾性格式的數字。 我正在使用ISNUMBER
來查找數字,並使用SUMPRODUCT
來計算范圍內已標識的單元格。 如果大於0(至少1),則它將變為∆
。
現在可以代替“不包含X或日期”來檢查O
我將對O
計數,並用-
(條件3和5一起)相加,並查看它們是否加起來Q2:U2
的總單元數(在這種情況下為5):
=IF(COUNTIF(Q2:U2,"O")+COUNTIF(Q2:U2,"-")=5,"O","FALSE")
合並后,它將變成:
=IF(COUNTIF(Q2:U2,"X")>0,"X",IF(SUMPRODUCT(--ISNUMBER(Q2:U2))>0,"∆",COUNTIF(Q2:U2,"O")+COUNTIF(Q2:U2,"-")=5,"O","FALSE"))
由於所有這些都涉及計數,因此設置幫助程序列可能會更容易,例如:
| Q | R | S | T | U | V | W | X | Y | Z
1 | | | | | | Count of X | Count of dates | Count of O | Count of - | Final value
2 | | | | | | A | B | C | D | E
A將是:
=COUNTIF(Q2:U2,"X")
B將是:
=SUMPRODUCT(--ISNUMBER(Q2:U2))
C將是:
=COUNTIF(Q2:U2,"O")
D將是:
=COUNTIF(Q2:U2,"-")
E將是:
=IF(V2>0,"X",IF(W2>0,"∆",X2+Y2=5,"O","FALSE"))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.