You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Power Query中字符串转DateTime格式报错问题求助

解决Power Query中字符串转DateTime(保留毫秒)的问题

针对你要将Sep 10 2005 12:03:34:716 PM格式的字符串转换为DateTime且完整保留所有字符的需求,问题出在两个核心点:格式字符串的时间制逻辑错误,以及多余的文本替换操作破坏了原字符串结构。

修正步骤:

  1. 移除多余的文本替换操作:你添加的Replaced Value系列步骤会把原字符串中的PM/AM拆分成带空格的错误格式(比如PM变成 P M),直接导致DateTime解析失败,需删除这些步骤。
  2. 修正格式字符串:原格式中使用HH(24小时制)却搭配了tt(12小时制标识),造成解析冲突,将HH改为hh(12小时制)即可正确识别带AM/PM的时间。

修改后的高级编辑器代码:

Source = Csv.Document(File.Contents("D:\Users\rubhi\Downloads\access_control_t.bcp"),[Delimiter="#(tab)", Columns=10, Encoding=20127, QuoteStyle=QuoteStyle.None]),
    #"Changed Type with Locale" = Table.TransformColumnTypes(Source, {{"Column8", type text}}, "en-US"),
    #"Added Custom DateTime" = Table.AddColumn(#"Changed Type with Locale", "Custom.8", each DateTime.FromText([Column8], [Format="MMM dd yyyy hh:mm:ss:fff tt"], "en-US"))
in
    #"Added Custom DateTime"

验证说明:

  • 格式字符串MMM dd yyyy hh:mm:ss:fff tt完全匹配目标字符串结构:
    • MMM:匹配英文月份缩写(如Sep)
    • dd:匹配两位日期
    • yyyy:匹配四位年份
    • hh:匹配12小时制的小时数
    • mm:匹配分钟
    • ss:匹配秒
    • fff:匹配三位毫秒数
    • tt:匹配12小时制标识(AM/PM)
  • 显式指定en-US区域设置,确保英文月份和AM/PM能被正确解析。

内容的提问来源于stack exchange,提问作者RSU

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 06:13:15