
我正在嘗試解決以下問題:
A 列:三個可能值之一。 {蘋果、柳橙、梨}
B 列:一個整數。
C 列的值應依前兩列計算。
對於 B 列,它需要介於一系列數字之間。例如(1-19、20-99)。因此,對於蘋果來說,如果數字在 1 - 19 之間,則該值應為 12,如果數字在 20 至 99 之間,則該值應為 4,大於該值,則該值應為 18。
每種水果的輸出範圍和數值都不同。
目前,我能做的最好的就是一長串嵌套的 if 語句,我認為這不是最佳的。
=IF(I74=Reference!$A$2,(IF(AND(H74>=1,H74<=19),Reference!$B$4,IF(AND(H74>=20,H74<=149), Reference!$C$4,IF(H74>=150,Reference!$D$4,"NaN")))),(IF(AND(H74>=1,H74<=19),Reference!$B$8,IF(AND(H74>=19,H74<=99), Reference!$C$8, IF(H74>=100, Reference!$D$8, "NaN")))))
我真的很感激任何幫助。謝謝。
答案1
您應該有一個參考表,描述每個項目的限制數量,並對數量進行排序DESCENDING
。
幹得好:
=INDEX($C$2:$C$4, MATCH(1, (F2 = $A$2:$A$4) * (G2 > $B$2:$B$4), 0))
並使用++CTRL代替插入數組公式。ShiftEnterEnter
解釋
$C$2:$C$4
是價格參考範圍。
因為我們有兩個要找的標準,所以使用MATCH(1, (criteria1) * (criteria2) * (...), 0)
.該公式類似於MATCH(TRUE, criteria1 AND criteria2 AND ...)
。
所以基本上就是MATCH
查找表上的項目名稱,以及低於數量值的數量限制。
在我的例子中,我只放了apples
參考表。顯然,您應該添加您oranges
和您自己。pears