一、函数简介
DATE 是 Excel 中用于 生成标准日期 的核心函数。它接受三个参数——年、月、日,返回一个序列号形式的日期值。因为很多业务数据里只记录了“月份”文本(如 “1月”),直接用 DATE 配合文本函数即可把零散信息统一成日期,方便后续的统计、汇总和筛选。
二、语法结构
=DATE(year, month, day)year | ||
month | ||
day |
小技巧:当
day设为0时,DATE会返回“上个月的最后一天”,这在求月末日时非常有用。
三、实战案例
数据已按行编号(从第 2 行起为第一行数据),列对应关系如下:
案例 1 把 “1月”“2月” 文本转换为标准日期(月初)
需求:在原有数据表旁新增一列 “月初日期”,把 “1月” 转为
2023/1/1,把 “2月” 转为2023/2/1,以此类推。
公式
= DATE(2023, VALUE(LEFT(D2, LEN(D2)-1)), 1)解析
LEFT(D2, LEN(D2)-1) | LEFT("1月", 1) → "1" | |
VALUE(...) | VALUE("1") → 1 | |
DATE(2023, …, 1) | DATE(2023,1,1) → 2023/1/1 |
将该公式向下填充,即可得到所有月份的月初日期。
效果

案例 2 快速得到每月最后一天的日期(月末)
需求:在案例 1 的基础上,再增加一列 “月末日期”,用于后续的累计统计。
公式
= DATE(2023, VALUE(LEFT(D2, LEN(D2)-1)) + 1, 0)解析
• VALUE(LEFT(D2, LEN(D2)-1)) + 1:将月份加 1,得到下个月的数值。• DAY参数设为0:相当于把日期调回上个月的最后一天,即本月的最后一天。
效果
这一列在后面的累计汇总中起到“截止日期”的作用。四、常见错误与排查
#VALUE! | LEFTLEN 返回的文本未通过 VALUE 转为数字,导致 DATE 的第二个参数是文本 | VALUE 将月份数字转为数值,或直接使用 MID、TEXT 系列函数 |
#NUM! | DAY 为 0 时是合法用法,仅在超过 12 时会跨年 | |
SUMIFS 的条件范围是 $G$2:$G$21,而比较值是相对当前行的 G2 |
调试技巧:在公式前后加上
=检查每一步的中间结果,例如在单元格输入=VALUE(LEFT(D2,LEN(D2)-1)),确认是否能得到 1、2、3… 再继续拼接DATE。
五、使用小结
1. 是日期构造的基石,无论是从文本、月份数值还是通过数学运算得到“下个月第 0 天”,都能轻松搞定。 2. 文本转数值是处理中文月份(如 “1月”)的关键, LEFT+LEN去掉 “月”,VALUE完成转换。3. 月末日期 ( DATE(year, month+1, 0)) 能帮助我们快速定位统计区间,配合SUMIFS、COUNTIFS等条件聚合函数,可实现月报、季报自动累计。4. 注意 单元格格式、引用方式 与 参数范围,这三大坑是新手最常踩的。
掌握以上技巧后,你就可以把散落在各个月份的文字数据,变成 可排序、可筛选、可图表 的完整时间序列,为后续的数据分析和决策提供坚实基础。
📚 配套学习资料免费领
评论回复:DATE
点击公众号菜单「函数教程」或直接发送关键词
,获取更多实战案例与练习文件。
夜雨聆风