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

如何在Excel中添加固定及时分格式的自定义时长

Excel时间计算两类常见问题的实操解决方案

刚好处理过这两类Excel时间计算需求,给你整理了一步就能上手的解决办法:

一、给现有时间添加固定时长(1小时/半小时/20分钟等)

这里分两种情况处理,取决于你的原始时间格式:

  • 如果原始单元格是标准时间格式(比如10:30、下午2:45这类)
    直接用TIME函数构建增量,和原时间相加即可:

    • 添加1小时:=A1 + TIME(1, 0, 0)
    • 添加半小时:=A1 + TIME(0, 30, 0)
    • 添加20分钟:=A1 + TIME(0, 20, 0)
      注:TIME函数的三个参数分别对应「小时、分钟、秒」,按需调整就行
  • 如果原始单元格是数值(比如用2代表2小时,0.5代表半小时)
    因为Excel里1天=1,1小时=1/24,所以先把数值转成时间格式再加增量:
    比如给数值2加20分钟:=A1/24 + TIME(0, 20, 0)

二、对「X小时Y分钟」格式的自定义时长求和

这种文本格式的时长没法直接求和,得先转成可计算的数值,求和后再转回去,步骤如下:

假设你的时长数据都在A列(比如A1=「1小时20分钟」,A2=「30分钟」):

步骤1:把文本时长转成总分钟数

在B1单元格输入以下公式,下拉填充到所有行:

=IF(ISNUMBER(SEARCH("小时",A1)),LEFT(A1,SEARCH("小时",A1)-1)*60,0) + IF(ISNUMBER(SEARCH("分钟",A1)),MID(A1,IFERROR(SEARCH("小时",A1)+2,1),SEARCH("分钟",A1)-IFERROR(SEARCH("小时",A1)+2,1))*1,0)

这个公式的逻辑是:

  • 先提取「小时」前面的数字,乘以60转成分钟
  • 再提取「分钟」前后的数字(如果有「小时」就从「小时」后开始取,没有就从开头取)
  • 把两部分相加得到总分钟数(比如「1小时20分钟」会转成80,「30分钟」转成30)

步骤2:计算总分钟数的和

用SUM函数求和B列的分钟数:

=SUM(B:B)

示例里的总和就是80+30=110分钟

步骤3:把总分钟数转回「X小时Y分钟」格式

用以下公式把求和结果转成目标格式:

=IF(INT(SUM(B:B)/60)=0,"",INT(SUM(B:B)/60)&"小时")&IF(MOD(SUM(B:B),60)=0,"",MOD(SUM(B:B),60)&"分钟")

这个公式会自动处理边界情况:

  • 总和110分钟→「1小时50分钟」
  • 总和40分钟→「40分钟」
  • 总和2小时→「2小时」

示例效果:
A1: 1小时20分钟 → B1: 80
A2: 30分钟 → B2: 30
SUM(B1:B2): 110 → 最终格式: 1小时50分钟

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.28 17:02:36