Excel 基础逻辑函数 #

函数概览 #

逻辑函数用于进行条件判断和逻辑运算,是构建复杂公式的基础。

text
┌─────────────────────────────────────────────────────────────┐
│                    基础逻辑函数一览                          │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  IF      条件判断    =IF(A1>60, "及格", "不及格")           │
│  AND     逻辑与      =AND(A1>60, B1>60)                     │
│  OR      逻辑或      =OR(A1>60, B1>60)                      │
│  NOT     逻辑非      =NOT(A1>60)                            │
│  TRUE    真值        =TRUE()                                │
│  FALSE   假值        =FALSE()                               │
│                                                             │
└─────────────────────────────────────────────────────────────┘

逻辑值 #

TRUE 和 FALSE #

excel
Excel 中的逻辑值:
TRUE  = 真(等于 1)
FALSE = 假(等于 0)

在计算中:
=TRUE + 1     → 2
=FALSE + 1    → 1
=TRUE * 5     → 5
=FALSE * 5    → 0

生成逻辑值 #

excel
直接输入:
=TRUE()
=FALSE()

比较运算:
=5 > 3        → TRUE
=5 < 3        → FALSE
=5 = 5        → TRUE
=5 <> 3       → TRUE

函数返回:
=ISNUMBER(A1)     → TRUE 或 FALSE
=ISTEXT(A1)       → TRUE 或 FALSE

IF 函数 #

语法 #

excel
=IF(logical_test, value_if_true, [value_if_false])

参数:
- logical_test: 条件表达式
- value_if_true: 条件为真时返回的值
- value_if_false: 条件为假时返回的值(可选)

基本用法 #

excel
=IF(A1>60, "及格", "不及格")
=IF(A1="", "空", "非空")
=IF(A1>B1, "A大", "B大")
=IF(A1=100, "满分", "")

实际示例 #

text
成绩判断:
    A          B
1   成绩       结果
2   85         =IF(A2>=60, "及格", "不及格")  → "及格"
3   55         =IF(A3>=60, "及格", "不及格")  → "不及格"

多条件判断 #

excel
成绩等级:
=IF(A1>=90, "优秀", IF(A1>=80, "良好", IF(A1>=60, "及格", "不及格")))

或使用 IFS(Excel 2019+):
=IFS(A1>=90, "优秀", A1>=80, "良好", A1>=60, "及格", TRUE, "不及格")

IF 嵌套 #

excel
多层嵌套:
=IF(A1>=90, "A", 
   IF(A1>=80, "B", 
      IF(A1>=70, "C", 
         IF(A1>=60, "D", "F"))))

注意:嵌套层数限制
- Excel 2003: 最多7层
- Excel 2007+: 最多64层

实际应用 #

excel
判断是否为空:
=IF(A1="", "空", A1)

判断是否为数字:
=IF(ISNUMBER(A1), A1*2, "非数字")

条件计算:
=IF(A1>100, A1*0.9, A1)

条件求和:
=IF(A1="销售", SUM(B:B), 0)

AND 函数 #

语法 #

excel
=AND(logical1, [logical2], ...)

所有条件都为 TRUE 时返回 TRUE
任意一个条件为 FALSE 时返回 FALSE

基本用法 #

excel
=AND(TRUE, TRUE)            → TRUE
=AND(TRUE, FALSE)           → FALSE
=AND(FALSE, FALSE)          → FALSE
=AND(A1>60, B1>60)          两个都大于60
=AND(A1>0, A1<100)          在0到100之间

真值表 #

text
┌─────────┬─────────┬─────────┐
│   A     │   B     │ AND(A,B)│
├─────────┼─────────┼─────────┤
│  TRUE   │  TRUE   │  TRUE   │
│  TRUE   │  FALSE  │  FALSE  │
│  FALSE  │  TRUE   │  FALSE  │
│  FALSE  │  FALSE  │  FALSE  │
└─────────┴─────────┴─────────┘

实际应用 #

excel
判断是否同时满足条件:
=IF(AND(A1>=60, B1>=60), "全部及格", "有不及格")

判断是否在范围内:
=IF(AND(A1>=0, A1<=100), "在范围内", "超出范围")

多条件验证:
=IF(AND(A1<>"", B1<>"", C1<>""), "完整", "不完整")

实际示例 #

text
考试判断:
    A          B          C
1   语文       数学       结果
2   85         90         =IF(AND(A2>=60, B2>=60), "全部及格", "有不及格")
                           → "全部及格"

OR 函数 #

语法 #

excel
=OR(logical1, [logical2], ...)

任意一个条件为 TRUE 时返回 TRUE
所有条件都为 FALSE 时返回 FALSE

基本用法 #

excel
=OR(TRUE, FALSE)            → TRUE
=OR(FALSE, FALSE)           → FALSE
=OR(A1>60, B1>60)           至少一个大于60
=OR(A1="A", A1="B")         等于A或B

真值表 #

text
┌─────────┬─────────┬─────────┐
│   A     │   B     │  OR(A,B)│
├─────────┼─────────┼─────────┤
│  TRUE   │  TRUE   │  TRUE   │
│  TRUE   │  FALSE  │  TRUE   │
│  FALSE  │  TRUE   │  TRUE   │
│  FALSE  │  FALSE  │  FALSE  │
└─────────┴─────────┴─────────┘

实际应用 #

excel
判断是否满足任一条件:
=IF(OR(A1>=90, B1>=90), "有优秀", "无优秀")

判断是否为特定值:
=IF(OR(A1="A", A1="B", A1="C"), "符合", "不符合")

判断是否为空:
=IF(OR(A1="", B1=""), "有空值", "都有值")

实际示例 #

text
优惠判断:
    A          B          C
1   会员等级    消费金额    是否优惠
2   VIP        500        =IF(OR(A2="VIP", B2>=1000), "享受优惠", "无优惠")
                           → "享受优惠"

NOT 函数 #

语法 #

excel
=NOT(logical)

对逻辑值取反
TRUE → FALSE
FALSE → TRUE

基本用法 #

excel
=NOT(TRUE)                  → FALSE
=NOT(FALSE)                 → TRUE
=NOT(A1>60)                 不大于60
=NOT(ISBLANK(A1))           非空

实际应用 #

excel
判断是否为空:
=IF(NOT(ISBLANK(A1)), A1, "空")

判断是否不等于:
=IF(NOT(A1="销售"), "非销售", "销售")

排除特定值:
=IF(NOT(OR(A1="A", A1="B")), "其他", "A或B")

函数组合应用 #

IF + AND #

excel
判断是否全部及格:
=IF(AND(A1>=60, B1>=60, C1>=60), "全部及格", "有不及格")

判断是否在范围内:
=IF(AND(A1>=10, A1<=100), "在范围内", "超出范围")

IF + OR #

excel
判断是否有不及格:
=IF(OR(A1<60, B1<60, C1<60), "有不及格", "全部及格")

判断是否为特定值:
=IF(OR(A1="A", A1="B", A1="C"), "符合", "不符合")

IF + AND + OR #

excel
复杂条件判断:
=IF(AND(A1>=60, OR(B1="销售", B1="市场")), "符合条件", "不符合")

多条件组合:
=IF(OR(AND(A1>=90, B1>=90), AND(A1>=80, B1>=95)), "优秀", "普通")

嵌套 IF #

excel
成绩等级判断:
=IF(A1>=90, "优秀", 
   IF(A1>=80, "良好", 
      IF(A1>=60, "及格", "不及格")))

奖金计算:
=IF(A1>=10000, A1*0.1, 
   IF(A1>=5000, A1*0.05, 
      IF(A1>=1000, A1*0.02, 0)))

实战案例 #

案例1:成绩等级判断 #

text
数据:
    A          B
1   成绩       等级
2   95         =IF(A2>=90, "优秀", IF(A2>=80, "良好", 
                           IF(A2>=60, "及格", "不及格")))
              → "优秀"

案例2:员工考核 #

text
数据:
    A          B          C          D
1   销售额     客户数     满意度     考核结果
2   10000      50         90         =IF(AND(A2>=8000, B2>=30, C2>=80), 
                                      "合格", "不合格")
                                      → "合格"

案例3:优惠判断 #

text
数据:
    A          B          C
1   会员等级   消费金额   优惠
2   VIP        500        =IF(OR(A2="VIP", B2>=1000), "享受优惠", 
                           IF(B2>=500, "小优惠", "无优惠"))
                           → "享受优惠"

案例4:数据验证 #

text
数据:
    A          B          C          D
1   姓名       电话       邮箱       验证结果
2   张三       13812345678 a@b.com   =IF(AND(A2<>"", B2<>"", C2<>""), 
                                      "完整", "不完整")
                                      → "完整"

小结 #

基础逻辑函数是条件判断的核心工具:

函数 用途 示例
IF 条件判断 =IF(A1>60, "及格", "不及格")
AND 逻辑与 =AND(A1>60, B1>60)
OR 逻辑或 =OR(A1>60, B1>60)
NOT 逻辑非 =NOT(A1>60)
TRUE 真值 =TRUE()
FALSE 假值 =FALSE()

接下来,让我们学习 条件判断进阶,掌握更复杂的条件判断技巧。

最后更新:2026-04-11