A B C(Output)
----------- ----------- ------
| 65 | 0 | 2 |
----------- ----------- ------
| 31 | 99 | 3 |
----------- ----------- ------
| 0 | 36 | 2 |
----------- ------------ -----
| 9 | 4 | 1 |
----------- ------------ -----
我正在嘗試在 Excel 中建立一個公式(例如語句IF-THEN
)來查看 A 列和/或 B 列,併計算這兩列中哪一列較高,並將值分類為 0、1、2 ,3.
我有查看一列的公式,但我似乎無法合併兩列。
=IF(A1=0,"0",IF(AND(A1>0,A1<=10),"1",IF(AND(A1>=11,A1<=80),"2",IF( AND(A1>=80),"3"))))
標準:
0=0, 1-10=1, 11-80=2, >80=3
答案1
您可以使用函數確定更大的值MAX(A1,B1)
:
IF(MAX(A1,B1)=0,0,IF(AND(MAX(A1,B1)>0,MAX(A1,B1)<=10),1,IF(AND(MAX(A1,B1)>10,MAX(A1,B1)<=80),2,IF(MAX(A1,B1)>80,3))))
如果所有值都是正數,則不必檢查下限,因此可以透過以下方式簡化函數:
IF(MAX(A1,B1)=0,0,IF(MAX(A1,B1)<=10,1,IF(MAX(A1,B1)<=80,2,3)))
答案2
如果我是你,我會製作第三列 C,即
=IF(A1 > B1, A1, B1)
然後你可以只對一列進行計算。如果需要,您可以隱藏它。
無論如何,讓我們簡化方程,例如如果值超過 80,我們就不需要進一步測試:
=if(C1 >= 80, "3", if(C1 >= 11,"2",if(C1=0,"0","1"))))
請注意,一旦測試匹配,其餘測試if
將被丟棄。因此,如果超過 80,則選擇 3 並結束。如果超過11,那麼必須80分以下,否則達不到第二次測試。
因此,將兩者結合起來,將 C1 替換為if
測試的最大值:
=if(IF(A1 > B1, A1, B1) >= 80, "3", if(IF(A1 > B1, A1, B1) >= 11,"2",if(IF(A1 > B1, A1, B1)=0,"0","1"))))