Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 向公式中添加多个IFs_Excel_Excel Formula - Fatal编程技术网

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))