ZetCode

Excel IF 函数

最后修改于 2025 年 4 月 4 日

IF 函数是 Excel 中最强大、最常用的函数之一。它执行逻辑测试,并根据测试结果为真还是为假返回不同的值。本教程通过详细的示例,提供了使用 IF 函数的全面指南。您将学习基本语法、实际应用和高级技术,以掌握这个重要的 Excel 函数。

IF 函数基础

IF 函数会评估一个条件,如果条件为真则返回一个值,如果条件为假则返回另一个值。它可以在 Excel 公式中实现决策。其语法非常简单但高度灵活。

组成部分 描述
函数名称 IF
语法 =IF(logical_test, value_if_true, value_if_false)
参数 3 (测试, 为真时的结果, 为假时的结果)
返回值 取决于测试结果

此表分解了 IF 函数的基本组成部分。它展示了函数名称、基本语法格式、参数以及返回值特性。

基本 IF 示例

此示例演示了 IF 函数与数字比较的最简单用法。

基本 IF 公式
=IF(A1>10, "High", "Low")

此公式检查单元格 A1 的值是否大于 10。如果为真,则返回“High”;如果为假,则返回“Low”。这显示了 IF 的基本条件逻辑结构。

IF 与文本比较

IF 也可以像数字一样比较文本值。这是一个检查单元格是否包含特定文本的示例。

A B
Apple
Orange
Banana
=IF(A1="Apple", "Fruit", "Other")

该表展示了一个简单的电子表格,其中 A 列包含文本值,B4 单元格包含一个 IF 公式,该公式检查 A1 是否包含“Apple”。

IF 与文本比较
=IF(A1="Apple", "Fruit", "Other")

此公式检查单元格 A1 是否等于“Apple”。如果为真,则返回“Fruit”;否则返回“Other”。默认情况下,IF 中的文本比较不区分大小写。

嵌套 IF 示例

可以嵌套多个 IF 函数来处理多个条件。此示例显示了一个具有多个阈值的评分系统。

A B
85
=IF(A1>=90, "A", IF(A1>=80, "B", IF(A1>=70, "C", "D")))

该表演示了使用嵌套 IF 函数根据数字分数分配字母等级。该公式按顺序检查多个条件。

嵌套 IF 公式
=IF(A1>=90, "A", IF(A1>=80, "B", IF(A1>=70, "C", "D")))

此公式首先检查分数是否大于等于 90。如果不满足,则检查是否大于等于 80,然后检查是否大于等于 70,最后默认返回“D”。嵌套 IF 允许复杂的决策树。

IF 与 AND/OR 函数

IF 可以与 AND/OR 函数结合使用来测试多个条件。此示例同时检查两个标准。

A B C
25 5000
=IF(AND(A1>18, B1>3000), "Approved", "Denied")

该表展示了如何使用 IF 与 AND 来要求满足年龄 (A1) 和收入 (B1) 标准才能获得批准。

IF 与 AND 函数
=IF(AND(A1>18, B1>3000), "Approved", "Denied")

此公式检查年龄是否大于 18 且收入是否超过 3000。必须同时满足这两个条件才能获得批准。AND/OR 扩展了 IF 的逻辑测试能力。

IF 与数学运算

IF 可以根据条件返回不同的计算结果。此示例根据购买金额应用不同的折扣率。

A B
1200
=IF(A1>1000, A1*0.9, A1*0.95)

该表演示了如何使用 IF 根据单元格 A1 中的值在不同的数学运算之间进行选择。

IF 与计算
=IF(A1>1000, A1*0.9, A1*0.95)

如果购买金额超过 1000,此公式应用 10% 的折扣,否则应用 5% 的折扣。IF 可以根据条件返回不同的计算结果。

IF 与空单元格

IF 可以使用 ISBLANK 函数检查空单元格。此示例演示了如何处理缺失的数据。

A B
数据
=IF(ISBLANK(A1), "Missing", "Present")

该表包含空单元格和非空单元格,以演示 IF 在与 ISBLANK 结合时对空单元格的处理。

IF 与 ISBLANK
=IF(ISBLANK(A1), "Missing", "Present")

此公式检查 A1 是否为空,如果为空则返回“Missing”,否则返回“Present”。ISBLANK 有助于在条件逻辑中管理不完整的数据集。

IF 与错误处理

IF 可以使用 ISERROR 或 IFERROR 函数检测和处理错误。此示例可防止公式中显示错误。

A B
10
0
=IF(ISERROR(A1/A2), "Error", A1/A2)

该表展示了如何使用 IF 与 ISERROR 来优雅地处理潜在的除零错误。

IF 与错误处理
=IF(ISERROR(A1/A2), "Error", A1/A2)

此公式尝试进行除法运算,但如果运算失败则返回“Error”。这可以防止错误值在您的电子表格中传播。

IF 与日期比较

IF 可以比较日期并返回基于日期的结果。此示例检查日期是否已过截止日期。

A B
4/15/2025
=IF(A1>TODAY(), "Future", "Past")

该表演示了使用 IF 和 TODAY 函数进行日期比较,以确定日期是在未来还是过去。

IF 与日期比较
=IF(A1>TODAY(), "Future", "Past")

此公式将 A1 中的日期与今天的日期进行比较。如果 A1 的日期更晚,则返回“Future”;否则返回“Past”。Excel 将日期存储为数字以便进行比较。

IF 与数组公式

在现代 Excel 中,IF 可以与数组公式一起处理多个值。此示例将条件应用于一个范围。

IF 与数组
=SUM(IF(A1:A10>50, A1:A10, 0))

此数组公式仅对 A1:A10 中大于 50 的值进行求和,将其他值视为 0。IF 函数单独处理范围中的每个单元格。

IF 函数对所有 Excel 用户都至关重要。从简单的条件检查到复杂的决策树,IF 都能满足各种逻辑需求。掌握 IF 及其组合(AND/OR、IS 函数)将显著提高您的电子表格处理能力。请记住,IF 可以根据条件返回数值、计算结果,甚至是其他函数。

作者

我的名字是 Jan Bodnar,我是一名充满热情的程序员,拥有丰富的编程经验。我自 2007 年以来一直撰写编程文章。迄今为止,我已撰写了 1400 多篇文章和 8 本电子书。我在编程教学方面拥有十多年的经验。

列出 所有 Excel 公式