Excel中将数字格式日期转短日期显示###的解决方法求助
解决YYYYMMDD日期转短日期显示###的问题
首先,出现"###"通常有两个原因:要么是单元格宽度不够,放不下格式化后的内容;要么是你的日期数据是文本格式的字符串,直接设置日期格式无法被系统识别。下面一步步帮你解决:
第一步:排除单元格宽度问题
先把日期列的单元格拉宽一点,如果拉宽后能正常显示,那只是宽度的小问题,直接设置格式就行。如果还是显示"###",那就是数据类型的问题,继续往下看。
第二步:将文本格式的YYYYMMDD转为有效日期值
因为你原数据是类似20170101的纯数字串(大概率是文本格式),Excel没法直接识别成日期,所以需要先转成系统能识别的日期值:
方法1:用DATE函数拆分转换(适合单条或少量数据)
假设你的日期在A1单元格,在旁边空白单元格(比如B1)输入公式:
=DATE(LEFT(A1,4), MID(A1,5,2), RIGHT(A1,2))
LEFT(A1,4)提取前4位作为年份MID(A1,5,2)提取第5-6位作为月份RIGHT(A1,2)提取最后2位作为日期
按回车后,B1就会变成系统可识别的日期值,此时再设置格式即可。
方法2:用分列工具批量转换(适合大量数据)
如果是整列的日期需要转换,用分列更高效:
- 选中整个日期列
- 点击菜单栏的「数据」→「分列」
- 第一步选「固定宽度」,点击下一步
- 在预览区的第4位和第6位分别点击添加分隔线,把
2017|01|01分成年、月、日三列,点击下一步 - 每列的列数据格式都选「文本」,点击完成
- 然后在新单元格用
=DATE(C1,D1,E1)(假设分列后年、月、日在C、D、E列)合并成日期值
第三步:设置短日期格式为m/d/yyyy
选中转换后的日期值单元格:
- 右键→「设置单元格格式」
- 切换到「数字」选项卡,选择「自定义」
- 在类型框里输入
m/d/yyyy(注意是小写m,大写M代表分钟) - 点击确定,就能显示成
1/1/2017的格式了
如果不想用公式,也可以先把文本转成数字(选中列→点击左上角绿色感叹号→转换为数字),再用自定义格式调整,但这种方法偶尔会出错,用DATE函数拆分的方式更稳妥。
内容的提问来源于stack exchange,提问作者Pweshee
相关产品推荐
相关产品推荐

