ARTICLE · 1183192
Excel技巧-系统导出的日期用不了
前两天看一张表,日期列写着"2026年9月1日",一排序出来个 1 月、10 月、2 月的顺序,用不了一点。查半天发现那列根本不是日期,是文本。看着像日期,Excel 排序按拼音笔画走。所以把我现在处理这种列的办法整理一下。下文以 Office 365 演示,WPS 新版操作基本一致。先确认它是不是日期(这步很多人跳,上来就改,改半天发现改的不是地方)点一下那个单元格,看两处:
点一下那个单元格,看两处:
1. 对齐方式。真日期默认靠右,文本默认靠左
2. 编辑栏。真日期显示 2026/9/1,文本就显示你看到的原样"2026年9月1日"
要是还不放心,找个空单元格敲
=ISNUMBER(A2)
出 TRUE 就是真日期,FALSE 就是文本。
【动图1:点单元格 → 看对齐和编辑栏 → ISNUMBER 判断】

整列转日期"分列"
一次转一整列,最快,适合不需要保留原样式的表。
1. 选中日期那一列
2. 数据 → 分列
3. 前两步直接点下一步,到第三步选"日期",右边下拉选 YMD
4. 完成
(第三步那个 YMD 是年月日的顺序,"2026年9月1日""20260901""2026-9-1"都选它。如果导出来是"09/01/2026"这种月在前,要选 MDY,选错了年份会乱掉)
【动图2:选中列 → 分列向导 → 第三步选日期 YMD → 完成】

不想动原数据就用函数
有些表原列不能改,或者要留着对账,那就新增一列算出来。
1. 在旁边插入一列
2. 输入
=DATEVALUE(A2)
1. 往下填充
2. 要是出来 46265 这种数字别慌,那是日期序列号,Ctrl+1 把单元格格式设成日期就好
(DATEVALUE 认"2026年9月1日""2026-9-1"这种带分隔符的。如果原数据是"20260901"八位连着写的,它认不出来,换成
=DATE(LEFT(A2,4),MID(A2,5,2),RIGHT(A2,2))
按位置切成年月日再拼,这个最稳,什么格式都能治)
还有个野路子:找一列空列输入 1、复制、选中日期列、选择性粘贴 → 乘,也能逼着它转成数字。
【动图3:DATEVALUE 输入 → 下拉填充 → 设单元格格式】

转完能干什么
前面折腾这一圈,就是为了后面这几件事能做:
1. 算天数,=DATEDIF(A2,B2,"d"),账期、逾期天数一下出来
2. 透视表里按月、按季度分组,右键 → 组合,选月
3. 排序正常了,筛"本月""上月"也正常了
(这三条里第二条最实用。文本日期拖进透视表,行里会一个日期占一行,几百行铺开根本看不了)
END
收藏这篇,下次遇到系统导出的表直接翻出来照做。
最后补 3 条避坑:
1. 分列会直接覆盖原列,转之前先在旁边插一列把原始数据复制一份,转错了还能退回去;
2. 八位数字"20260901"分列第三步一定要选 YMD,别选默认的"常规",选常规它就真当数字 20260901 处理了;
3. 转完之后用 =ISNUMBER() 抽查几行,TRUE 才算真转成功,看着像日期不等于就是日期。
虽然但是还是希望大家点赞鼓励一下我,留言也可以!实在不行,赞赏我也接受!感谢!!
你们的表里最常遇到哪种日期格式?留言说清楚,如果有时间,我会做的。















































































