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

如何基于分钟级时间戳在Excel中按班次统计运行/停机时长

Excel按班次统计设备运行/停机时长及区间解决方案

一、数据预处理

确保时间戳列(假设为A列)是Excel可识别的日期时间格式,设备状态列(假设为B列)统一为“运行”/“停机”这类明确标识,避免模糊值。

二、新增班次划分列

在C列添加公式,自动判断每条数据所属班次:

=LOOKUP(MOD(A2,1),{0,7/24,15/24,1},{"夜班(23:00-7:00)","白班(7:00-15:00)","中班(15:00-23:00)"})

下拉填充整列,MOD(A2,1)提取时间部分,7/24对应7:00,15/24对应15:00,精准匹配班次区间。

三、标记连续状态区间

添加3个辅助列识别连续状态的起止时间:

  1. 状态组列(D列):标记连续相同状态的分组
    =IF(B2=B1,D1,D1+1)
    
    下拉填充,相同连续状态会被分配同一组号。
  2. 区间开始时间(E列):
    =IF(D2<>D1,A2,"")
    
    仅在状态组变化时记录开始时间。
  3. 区间结束时间(F列):
    =IF(D2<>D3,A2+TIME(0,1,0),"")
    
    因为是分钟级数据,结束时间为当前时间+1分钟,仅在状态组即将变化时记录。
  4. 区间时长(G列):
    =F2-E2
    
    格式化为“小时:分钟”或直接以小时为数值(方便后续汇总)。

四、统计各班次时长与区间

方式1:数据透视表(直观高效)

  1. 选中所有数据,插入数据透视表。
  2. 行字段:班次、状态、区间开始时间、区间结束时间
  3. 值字段:区间时长(选择“求和”)
  4. 调整布局即可得到各班次下,每个运行/停机区间的时长及总时长。

方式2:公式直接汇总

用SUMIFS计算各班次各状态的总时长:

=SUMIFS(G:G,C:C,"白班(7:00-15:00)",B:B,"运行")

替换班次和状态关键词,即可得到对应总时长。

五、输出格式参考

整理成表格形式(可按需调整):

班次设备状态时间区间单段时长班次内总时长
白班(7:00-15:00)运行2024/05/01 7:02 - 2024/05/01 9:152小时13分6小时45分
白班(7:00-15:00)停机2024/05/01 9:16 - 2024/05/01 10:0347分1小时15分
中班(15:00-23:00)运行2024/05/01 15:00 - 2024/05/01 20:305小时30分7小时20分

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 00:06:26