如何在Excel中将时长字符批量转换为秒数?(22000条样本)
处理Excel大量时长转秒的高效方案
嘿,面对22000条时长数据要转换成秒数,手动计算完全不现实,我给你分享两个亲测好用的高效方案,轻松搞定批量转换:
方法一:Excel公式快速转换(上手最快)
这个方法适合格式相对统一的情况,直接写公式下拉就行,22000条数据Excel几秒就能处理完:
- 如果你的时长是标准时间格式(比如单元格显示为
7:37或1:20:30,本质是时间数值),直接用这个万能公式:=(--A1)*86400
原理是Excel里1天对应数值1,乘以86400(24×60×60)就能把时间值转成总秒数,不管是时分还是时分秒格式都适用。 - 如果你的时长是文本格式(比如显示为
"7分37秒"或带引号的"7:37"),先统一格式再计算:
比如带单位的文本,用SUBSTITUTE替换单位为冒号:=(--SUBSTITUTE(SUBSTITUTE(A1,"分",":"),"秒",""))*86400
写完公式后,选中单元格双击右下角填充柄,就能一键应用到所有22000条数据。
方法二:Power Query批量处理(超大量数据更稳定)
如果数据格式杂乱,或者担心公式下拉出错,用Power Query更稳妥,一次性处理所有数据还支持后续刷新:
- 选中你的时长数据列,点击顶部「数据」选项卡 → 「从表格/区域」(Excel 2016及以后版本自带,旧版本可以装插件)
- 在Power Query编辑器中,选中时长列,点击「转换」→ 「数据类型」,改成「持续时间」或「时间」(根据你的数据格式选)
- 点击「添加列」→ 「自定义列」,输入公式:
=Duration.TotalSeconds([时长列名])
把「时长列名」换成你实际的列标题,比如[A] - 点击「关闭并上载」,就能得到单独的秒数列,后续数据更新只要右键刷新就行,完全不用重复操作。
小提示:如果你的时长格式特别乱(比如有的是
"1小时5分",有的是"30s"),可以在Power Query里用「替换值」工具先统一格式,再转持续时间计算秒数。
内容的提问来源于stack exchange,提问作者LAXMI NARASIMHA ACHARYA




