Excel 向公式中添加多个IFs
有没有更简单、更简洁的方法来编写这个公式Excel 向公式中添加多个IFs,excel,excel-formula,Excel,Excel Formula,有没有更简单、更简洁的方法来编写这个公式 [1] [2] A 0 B 5940 C 13860 D 22500 E 87300 F 378000 =IF(Q27="A",0,IF(Q27="B",5940,IF(Q27="C",13860,IF(Q27="D",22500,IF(Q27="E",87300,IF(Q27="F",378000,"ERROR")))))) 因此,如果Q2
[1] [2]
A 0
B 5940
C 13860
D 22500
E 87300
F 378000
=IF(Q27="A",0,IF(Q27="B",5940,IF(Q27="C",13860,IF(Q27="D",22500,IF(Q27="E",87300,IF(Q27="F",378000,"ERROR"))))))
因此,如果Q27等于[1]中的一个字母,它将返回[2]中的相应值。
我设法得到了我期望的结果,但我想知道代码是否可以改进
谢谢这就是VLOOKUP的作用。将您的桌子放在A1:B6中,然后:
=VLOOKUP(Q27,A:B,2,FALSE)
或者你可以像这样“硬编码”VLOOKUP:
=VLOOKUP(Q27,{"A",0;"B",5940;"C",13860;"D",22500;"E",87300;"F",378000},2,FALSE)
或:
如果你必须硬编码这些值,那么也许
=iferror(choose(code(upper(q27))-64, 0, 5940, 13860, 22500, 87300, 378000), "error")
以下公式:
=INDEX($B$2:$B$7,MATCH(E2,$A$2:$A$7))
输入用于在单元格E2中查找的值。如果按照指定将公式放入单元格Q27中,则将在该单元格中获得返回值。如果你把D放在E2单元中,在Q27单元中有公式,那么在Q27中会得到22500
或者,如果辅助单元格E2不是一个选项,您可以简单地将公式中的E2替换为“A”或“B”,或您用于查找的任何特定值。一定要在它的周围加上引号。例如:
=INDEX($B$2:$B$7,MATCH("A",$A$2:$A$7))
什么版本?你有新的IFS函数吗?它们都比我的短,但我添加了iferror和空格!是的,这就是为什么我没有,:)我只是给出了选项。注意:索引/匹配是优化的,不需要精确的引用<代码>=索引(B:B,MATCH(E2,A:A,0))并且应该在MATCH中包括第三个标准的使用,特别是当需要精确匹配时。
=INDEX($B$2:$B$7,MATCH("A",$A$2:$A$7))