我一直在使用Excel中的IF语句,其中一些语言变得很重复。
[condition],[value if true]和[value_if_false]字段都包含相同的long表达式,这似乎是多余的。例如,许多函数看起来像这样:
=IF( [long_expression] > 130 , 3*[long_expression]^2 , 2*[long_expression]^3 )
有没有办法通过直接从其他两个字段引用条件来减少这些语句中的重复?
答案 0 :(得分:2)
您有3个选项,具体取决于:
IF
语句,则可以插入一个附加列,在那里进行计算(可能隐藏它)并引用它。由于无法在公式中定义变量,因此无法直接引用表达式。在较新版本的Excel中引入的唯一快捷方式是IFERROR
和IFNA
(可能还有其他一些),可以让您编写例如。
IF(ISERROR([possible_div_0_expression]),0,[possible_div_0_expression])
as
IFERROR([possible_div_0_expression],0)
答案 1 :(得分:1)
不幸的是,没有。 Excel不能用作编程语言。他们允许一些条件公式,这很好。当你必须将许多IF语句嵌套在一起以构成CASE语句的等效时,它变得更加混乱。
如果你想做一些更干净的公式,你可能需要考虑一个VB宏。
答案 2 :(得分:1)
您可以使用公式标签中的名称功能。选择 BigGuy 这样的名称,然后为其指定一个公式:
=(A1+A77)/(B23+B77)
然后:
=IF( BigGuy > 130 , 3*BigGuy^2 , 2*BigGuy^3 )