Power BI中如何将(h:)mm:ss格式文本转换为Time数据类型?
解决(h:)mm:ss格式跑步时长转Time类型的问题
针对你遇到的(h:)mm:ss格式时长无法正常转Time类型的问题,给你两个直接有效的Power Query解决方案:
方法1:补全小时前缀后直接转Time
核心思路是判断文本的冒号数量,对缺少小时部分的mm:ss格式补全00:前缀,再用Time.FromText转换:
= Table.AddColumn(#"你的上一步骤名", "转换后时间", each let rawText = Text.Trim([Tijd]), // 先清理文本前后多余空格 colonNum = List.Count(Text.Split(rawText, ":")) in if colonNum = 2 then Time.FromText("00:" & rawText) else Time.FromText(rawText), type time )
方法2:先转持续时间再转Time
Duration.FromText本身支持解析mm:ss格式,转成持续时间后再转成Time类型即可。如果之前转换失败,大概率是文本存在空格或异常值,加上清理和错误处理就能解决:
= Table.AddColumn(#"你的上一步骤名", "转换后时间", each try Time.From(Duration.FromText(Text.Trim([Tijd]))) otherwise null, type time )
Text.Trim:去除文本前后冗余空格,避免格式识别失败try...otherwise null:捕获异常值,避免整列报错,异常内容会返回null方便后续排查处理
内容的提问来源于stack exchange,提问作者Henk
相关产品推荐
相关产品推荐

