如何在Power Query中将Excel日期从MDY格式转换为DMY格式
在Power Query中修正日期识别错误(MDY转DMY)
针对你遇到的日期被错误识别为MDY(1月3日)、实际需要解析为DMY(3月1日)的问题,直接调整日期格式无效,得按以下步骤在Power Query里处理:
先把已识别为日期的列转成文本格式
选中目标日期列,右键选择「更改类型」→「文本」;或者直接在高级编辑器里添加M代码:= Table.TransformColumns(上一步骤名称, {{"你的日期列名", Text.From, type text}})按DMY格式重新解析为日期
选中刚转成文本的列,右键选择「更改类型」→「使用来自区域的类型」,在弹出窗口里,数据类型选「日期/时间」,区域选择支持DMY格式的选项(比如「英语(英国)」),点击确定即可。
如果你想精准指定格式,也可以用M代码直接定义解析规则:= Table.TransformColumns(上一步骤名称, {{"你的日期列名", each Date.FromText(_, [Format="d/M/yyyy h:mm:ss tt"]), type datetime}})
这里的Format参数完全匹配你提供的日期示例「1/3/2023 6:00:00 AM」,确保解析时把第一个数字当作日、第二个当作月。
为什么之前的方法没生效?因为当列已经被识别为日期类型时,「文本分列」只对文本列起作用;而Excel里的TEXT公式转换后再导入Power Query,系统可能会再次按默认的MDY规则重新识别日期,所以必须在Power Query里从文本格式重新开始解析。
内容的提问来源于stack exchange,提问作者Hussein El Charif
相关产品推荐
相关产品推荐

