Excel 公式基础:字符串、数值、布尔值、引用、日期和时间
从 Excel 公式真正处理的数据出发,讲清字符串、数值、布尔值、单元格与区域引用,以及日期和时间为什么可以直接参与计算。
本文目录 8 节 · 点击展开
很多 Excel 公式看不懂,并不是因为函数太难,而是还没有分清:公式里的每一段,到底是数值、文本、布尔值,还是一个引用。
先把这些基础概念弄清楚,后面再学 IF、XLOOKUP、FILTER、LET,公式会容易读很多。
先认出“这是什么”,再判断“函数要怎么处理它”。
123数值可以直接计算”123”字符串看起来像数字,本质仍是文本TRUE布尔值只有 TRUE / FALSEA2单元格引用读取 A2 当前的值A2:A10区域引用读取一整片单元格DATE(2026,8,27)日期数值只是用日期格式显示一、先学会看懂公式里的“值”和“引用”
以最常见的 IF 为例:
=IF(A2>100,"达标","未达标")
A2引用读取 A2 当前的值100数值直接参与大小比较A2>100布尔结果计算后得到 TRUE 或 FALSE“达标”字符串条件成立时返回文字一条公式里,经常同时出现多种类型。真正要学的不是“看到引号就背规则”,而是先理解 Excel 此刻把它当成什么。
| 写法 | Excel 如何理解 |
|---|---|
123 | 数值 123 |
"123" | 三个字符组成的文本 |
TRUE | 布尔值 |
"TRUE" | 文本 |
A2 | 单元格引用 |
"A2" | 两个字符组成的文本 |
A2:A10 | 区域引用 |
"A2:A10" | 文本 |
二、字符串和数值:看起来一样,不代表类型一样
最典型的例子就是:
=123+1
结果是 124。
而:
="123"&1
结果是文本 1231。
这里正好对应现有的两个函数方向:
VALUE:把可识别的文本数字转换成真正数值。TEXT:把数值按照指定格式输出成文本。
如果需要继续看这两个函数内部怎么运行,可以接着看 Excel 函数图解手册。
还有一个容易混淆的写法:
=""
它返回的是空字符串,不是一个真正从未填写过的空白单元格。很多公式里两者表现接近,但在计数、判断和数据清洗时并不完全相同。
三、引用:A2 不是一个值,而是“去这里取值”
公式里的引用可以理解成一个地址。
A2单个单元格读取 A2 的当前内容A2:A10连续区域读取 A2 到 A10$A$2绝对引用复制公式时保持地址不变”A2:A10”只是文本Excel 不会自动去读取这个区域因此:
=SUM(A2:A10)
SUM 收到的是一片真实区域。
而:
=SUM("A2:A10")
这里传进去的只是文本,不等于区域引用。
INDIRECT 之所以特殊,就是因为它可以把类似 "A2:A10" 这样的文本,再解释成真正引用:
=SUM(INDIRECT("A2:A10"))
先理解这一点,以后看到 LET 里给区域命名、XLOOKUP 里传入查找区域,或者动态拼接引用时会更容易理解。
四、布尔值:TRUE 和 FALSE 是公式里的判断结果
布尔值只有两个:
TRUE
FALSE
它们不需要加引号。
=A2>100
如果 A2 是 129,结果就是:
TRUE
而:
="TRUE"
返回的是文字 TRUE,不是布尔值。
IF、FILTER、AND、OR 的核心都离不开布尔值。区别只是:有的函数自己生成 TRUE / FALSE,有的函数接收已经生成好的 TRUE / FALSE,再决定下一步做什么。
五、日期为什么能直接加减:因为日期本质也是数值
Excel 里真正的日期,并不是一段普通文字。
=DATE(2026,8,27)
返回的是一个日期序列值,只是单元格通常把它按 2026/8/27 这样的日期格式显示出来。
=DATE(2026,8,27)因此:
=A2+1
如果 A2 是一个真实日期,结果就是下一天。
=B2-A2
两个日期相减,得到的是相差多少天。
如果把日期单元格改成“常规”格式,通常会看到它背后的序列值。具体序列号会受到工作簿日期系统影响,所以真正使用时不需要死记“某一天等于多少”,只要理解日期可以作为数值计算即可。
日期文本则是另一回事:
="2026/8/27"
这仍然只是文本。需要时可以用:
=DATEVALUE("2026/8/27")
把可识别的日期文本转换成真正日期值。
六、时间为什么也是数值:一天等于 1
Excel 把一整天看成 1,那么一天中的时间就是 0 到 1 之间的小数。
所以:
=TIME(12,0,0)
本质上得到的是 0.5。只是当单元格使用时间格式时,会显示成 12:00。
同理:
=TIMEVALUE("12:00")
也是把可识别的时间文本转换成一天中的时间数值。
七、日期 + 时间:整数部分是日期,小数部分是时间
真正的“日期时间”,就是两部分合在一起:
这也解释了为什么:
=TODAY()
只有今天的日期部分。
而:
=NOW()
同时包含今天的日期和当前时间。
如果开始时间在 A2、结束时间在 B2:
=B2-A2
结果单位本质上仍然是“天”。如果想得到小时,可以写:
=(B2-A2)*24
要得到分钟,则可以乘以 1440。
八、最后把这几类写法放到一起看
| 你想表达什么 | 公式里的写法 | 关键区别 |
|---|---|---|
| 数值 | 100 | 不加引号,可以直接计算 |
| 字符串 | "淘宝" | 用英文双引号包住 |
| 空字符串 | "" | 是文本,不等于真正空白单元格 |
| 布尔值 | TRUE / FALSE | 不加引号 |
| 条件判断 | A2>100 | 计算后返回 TRUE / FALSE |
| 单元格引用 | A2 | 去读取这个地址当前的值 |
| 区域引用 | A2:A10 | 表示一整片单元格 |
| 日期 | DATE(2026,8,27) | 本质是日期序列数值 |
| 时间 | TIME(12,0,0) | 本质是一天中的小数 |
| 日期时间 | NOW() | 日期整数部分 + 时间小数部分 |
如果你想直接练习日期与时间函数,可以进入 Excel 基础函数案例详解;其中包含 DATE、DATEVALUE、TIME、TIMEVALUE、HOUR、MINUTE、SECOND 等实际案例。