Excel中如何将m、s格式的时间字符串转换为hh:mm:ss格式
方案1:Excel内置公式转换(兼容全版本Excel)
- 假设原始时间数据存储在A列,首个数据位于A2单元格,在相邻空白列B2单元格输入以下公式:
=TIME(0,LEFT(A2,FIND("m",A2)-1),MID(A2,FIND(" ",A2)+1,FIND("s",A2)-FIND(" ",A2)-1)) - 回车获得计算结果后,右键点击B2单元格,选择「设置单元格格式」
- 在「数字」分类下选择「时间」,选中
hh:mm:ss格式确认即可;如果需要保留原始的毫秒精度,选择「自定义」格式,输入格式代码hh:mm:ss.00 - 下拉B2单元格公式到整列,即可完成全部数据转换
补充提示:如果存在无分钟单位、仅展示秒数的原始数据(如
37.2s),可先批量给这类数据加上前缀0m,再套用上述公式即可正常识别。
方案2:Power Query批量转换(适用Excel 2016及以上/365版本)
适合数据量较大、需要反复更新转换的场景,不需要手动下拉公式:
- 选中原始时间数据列,点击顶部菜单栏「数据」-「从表格/区域」,将数据导入Power Query编辑器
- 点击顶部「添加列」-「自定义列」,在弹出的窗口中输入自定义列公式:
= #duration(0,0,Number.From(Text.BeforeDelimiter([你的原始列名], "m")), Number.From(Text.BeforeDelimiter(Text.AfterDelimiter([你的原始列名], " "), "s")))
注意将公式里的你的原始列名替换为Power Query中实际展示的原始数据列名称 - 选中新增的自定义列,设置数据类型为「时间」,调整显示格式为
hh:mm:ss - 点击「关闭并上载」,转换完成的数据会自动生成新表格导回Excel
内容的提问来源于stack exchange,提问作者GreenSquirrel
相关产品推荐
相关产品推荐

