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

将轮班数据转换为区间级数据,求Excel中K2:Q49区域公式

解决Excel轮班数据转区间级统计的公式方案

根据你的需求和表格场景(左侧为员工每日轮班记录,右侧需按时间区间统计对应员工的排班情况),以下是适配K2:Q49区域的公式方案:

场景1:轮班单元格存储含区间文本(如「早班(08:00-16:00)」)

判断是否有排班(返回√/×)

在Q2单元格输入公式,完成后向右、向下填充至K2:Q49区域:

=IF(SUMPRODUCT(--(($A$2:$A$49=K2)*(ISNUMBER(SEARCH(Q$1,$B$2:$G$49)))))>0,"√","×")

公式说明:

  • $A$2:$A$49=K2:精准匹配当前行的员工姓名
  • ISNUMBER(SEARCH(Q$1,$B$2:$G$49)):检测该员工的轮班记录中是否包含当前表头的时间区间文本
  • SUMPRODUCT(--(...)):统计符合条件的记录数,大于0则标记存在排班

统计排班天数

如果需要统计对应区间的排班天数,替换为:

=SUMPRODUCT(--(($A$2:$A$49=K2)*(ISNUMBER(SEARCH(Q$1,$B$2:$G$49)))))

场景2:轮班数据拆分存起始/结束时间(如B列存开始时间,C列存结束时间)

若左侧轮班是单独的时间字段,使用时间重叠判断公式:

=IF(SUMPRODUCT(--(($A$2:$A$49=K2)*(($B$2:$B$49<=RIGHT(Q$1,5))*($C$2:$C$49>=LEFT(Q$1,5)))))>0,"√","×")

公式说明:

  • LEFT(Q$1,5)提取区间起始时间(如00:00),RIGHT(Q$1,5)提取区间结束时间(如04:00)
  • 通过时间范围重叠判断,确认员工轮班是否覆盖当前区间

新手操作提示

  1. 选中目标单元格输入公式后按回车确认
  2. 鼠标移至单元格右下角,待光标变为十字形时,拖动完成批量填充
  3. 公式中的$为绝对引用,确保拖动时数据源区域和表头引用不偏移

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 20:57:47