IfThen 为条件函数,如果条件等于 True,该函数返回一个值;如果条件等于 False,该函数返回另一个值。
函数语法:
IfThen(Condition, TrueParameter, FalseParameter)
Condition 是计算结果为 true 或 false 的逻辑表达式。可使用完整的条件逻辑以及复合布尔运算符(And、Not 和 Or)。Condition 还可以测试 #MISSING 值和 #ERROR 值。要获取有效条件运算符的列表,请参阅下表。
TrueParameter 和 FalseParameter 是根据条件的计算结果来计算的任何有效表达式。
下表说明完全受支持的条件运算符。在条件运算符支持的所有情况下,也会列出供替换的语法。
表 B-13 条件运算符
| 条件运算符 | 语法 | 逻辑 | 
|---|---|---|
| 等于 | expression  | 测试左侧的表达式是否等于右侧的表达式。 计算条件的例程不会考虑任何四舍五入。如果需要四舍五入,请使用 Round 函数。 示例: 
 返回 False | 
| 大于 | expression  | 测试左侧的表达式是否大于右侧的表达式。 示例: 
 返回 False | 
| 大于等于 | expression  | 测试左侧的表达式是否大于等于右侧的表达式。 正确的语法是 ">="。不支持语法 "=>"。 示例: 
 返回 False | 
| 小于 | expression  | 测试左侧的表达式是否小于右侧的表达式。 示例: 
 返回 True | 
| 小于或 等于 | expression  | 测试左侧的表达式是否小于等于右侧的表达式。 正确的语法是 "<="。不支持语法 "=<"。 示例: 
 返回 True | 
| 不等于 | expression  expression  | 测试左侧的表达式是否等于右侧的表达式。 计算条件的例程不会考虑任何四舍五入。如果需要四舍五入,请使用 Round 函数。 示例: 
 返回 True 
 返回 True | 
| IsMissing | 
 
 | 测试引用是否包含 #MISSING 结果。 如果引用为展开的行或列,那么,要使条件为 True,得到的所有单元格必须为 #MISSING。 示例: 
 如果行 1 具有 #MISSING 值,则返回 True。 | 
| IsError | 
 
 | 测试引用是否包含 #ERROR 结果。 如果引用为展开的行或列,那么,要使条件为 True,得到的所有单元格必须为 #ERROR。只有公式行与公式列才能导致 #ERROR。 示例: 
 如果行 2 具有 #ERROR 值,则返回 True。 | 
| IsNonNumeric | 
 
 
 
 | 测试引用是否包含 #MISSING 或 #ERROR 结果。 如果引用为展开的行或列,那么,要使条件为 True,得到的所有单元格必须为 #MISSING 和/或 #ERROR。 示例: 
 如果行 3 具有 #MISSING 或 #ERROR 值,则返回 True。 | 
| 括号 | 
 | 用于将条件分组。主要是为了便于阅读。 示例: 
 返回 False | 
表 B-14 条件运算符
| 复合条件 | 语法 | 逻辑 | 
|---|---|---|
| And | 
 
 | 用于比较两个条件的复合条件。如果所有条件均导致 True,则返回 True。 示例: 
 返回 False | 
| Not | 
 
 | 用于通过反转条件的结果对结果求反。 示例: 
 返回 True | 
| Or | 
 
 | 用于比较两个条件的复合条件。如果任何条件导致 True,则返回 True。 示例: 
 返回 True |