要防止 Excel 重新解读 CSV 中的日期,请通过 Excel 的数据导入工具导入文件,并在加载前设置日期列的格式。在 Mac 版 Excel 中,自文本 (旧版)向导提供了明确的文本选项以原样保留日期字符串,或者在您需要可正常使用的 Excel 日期时提供带有选定顺序(如 MDY 或 DMY)的日期选项。
为什么打开 CSV 时日期会改变
CSV 将值存储为文本字段;它不会保留 Excel 单元格格式,也不会告知 Excel 应使用哪种区域日期惯例。类似 03/04/2025 的值可能代表 3 月 4 日或 4 月 3 日。如果 Excel 对其进行自动解读,可能会改变该值的显示方式或所代表的日期。Microsoft 指出,导入 CSV 可能需要选择与源数据匹配的日期格式。导入或导出文本 (.txt 或 .csv) 文件
如果日期是标识符或必须严格保持原样书写,请将其作为文本导入。如果您需要按时间先后顺序对日期进行排序或进行计算,请作为日期导入并选择与源文件匹配的顺序。请在加载前确定这一点:事后更改单元格的显示格式无法可靠恢复已被 Excel 错误解读的值。
使用 Mac 文本导入向导导入
在 Excel 中打开一个工作簿,然后选择数据 > 自文本 (旧版)。在访达 (Finder) 窗口中选择 CSV 并选择打开。如果找不到自文本 (旧版),请检查 Excel 版本和“数据”选项卡;Microsoft 在文档中针对 Mac 版 Excel 介绍了此选项,但可用命令可能因版本而异。其 Mac 指南列出了向导步骤和列格式控制项。在 Mac 版 Excel 中导入和调整数据 (Power Query)
在向导的第一个屏幕中,对于典型的 CSV,请选择分隔符号。除非您知道该文件使用了不同的字符编码,否则请将文件原始格式保持为默认值。选择下一步。
在分隔符屏幕中,选择逗号并查看预览。确认每个字段都显示在各自的列中。如果字段内的逗号包含在引号中,请检查预览是否将该字段保留在一起;文本识别符号通常是双引号。选择下一步。
在最后一个屏幕中,在预览中选择日期列。在列数据格式下,选择文本以保留原始字符,包括前导零或容易产生歧义的日期字符串。要创建实际日期,请根据源文件选择日期以及正确的顺序(例如 MDY、DMY 或 YMD)。在预览中验证几行,尤其是日和月均小于或等于 12 的日期。Microsoft 的 Mac 指南确认您可以在此处设置每列的格式和日期格式。在 Mac 版 Excel 中导入和调整数据 (Power Query)
选择完成,选择放置导入数据的位置,然后选择确定。在使用之前,请对照原始 CSV 检查生成的列。如果作为文本导入,这些值应保持为文本;仅在确认其格式和含义后再进行转换。
如果在 Mac 上使用 Power Query
在适用于 Mac 的 Microsoft 365 版 Excel 中,您还可以选择数据 > 获取数据,选择文本/CSV,并在加载前使用转换数据。根据 Microsoft 的说法,运行 16.69 或更高版本的 Microsoft 365 订阅者通常可以在 Mac 上使用 Power Query。其预览可以检测列类型,因此请检查日期列,而不要假设检测到的类型与您的源文件一致。在 Mac 版 Excel 中导入和调整数据 (Power Query)
Microsoft 在文档中说明了 Power Query 可以在编辑器中调整数据,但其 Mac 导入指南并未在 CSV 预览中说明具体的日期顺序控制项。如果您需要在“将日期保留为文本”与“按特定顺序解读日期”之间做出有文档支持的明确选择,请在可用时使用自文本 (旧版)。如果您的 Excel 版本中没有该命令,对于易产生歧义的日期,请避免依赖自动转换;先复制一份 CSV 并将日期字符串更改为明确无误的格式,或者使用允许您设置列类型的受支持导入途径。
检查结果并保护原始文件
将导入的若干值与源文件进行对比,然后测试月/日容易混淆的日期。类似 21/04/2025 这样的日期可以表明该列是“日”在前;而单凭 03/04/2025 这样的值则无法判断。对于以文本形式保留的值,单元格是标签而不是可用的日期值。对于真正的日期,请在导入后设置所需的显示格式,但请记住,显示格式更改的是外观,而不是已经做出的日期解读。
在确认导入的值无误之前,请保持原始 CSV 不变。如果发现解读错误,请放弃导入的工作表,并使用正确的列设置重新导入,而不是试图通过更改外观来修复混合或读取错误的列。
来源
- 在 Mac 版 Excel 中导入和调整数据 (Power Query) — Microsoft 支持
- 导入或导出文本 (.txt 或 .csv) 文件 — Microsoft 支持