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

PBX系统通话最大并发数计算:SUMPRODUCT公式修正求助

修正PBX通话记录最大并发数的Excel无VBA公式

原公式问题说明

你使用的公式 =SUMPRODUCT(($a$2:$a$8<b2)*($b$2:$b$8>a2)) 计算的是与当前通话存在重叠的所有通话总数,而非当前通话时段内的最大并发通话峰值——这就是第四行结果错误的核心原因。

修正公式方案

方案1:适用于Excel 365/2021(支持动态数组)

使用LET函数简化逻辑,公式如下(假设开始时间在A列,结束时间在B列,当前行是第2行):

=LET(
    currStart,A2,
    currEnd,B2,
    events,FILTER(TOCOL($A$2:$B$8),(TOCOL($A$2:$B$8)>=currStart)*(TOCOL($A$2:$B$8)<=currEnd)),
    MAX(COUNTIFS($A$2:$A$8,"<="&events,$B$2:$B$8,">"&events))
)

逻辑解析:

  • 提取当前通话时段[A2,B2]内的所有关键事件点(所有通话的开始/结束时间)
  • 对每个事件点,统计此时正在进行的通话数(开始时间≤该点,结束时间>该点)
  • 取所有统计值的最大值,即为当前时段的最大并发数

方案2:适用于旧版Excel(无动态数组支持)

需按Ctrl+Shift+Enter输入数组公式:

=MAX(COUNTIFS($A$2:$A$8,"<="&IF(($A$2:$B$8>=A2)*($A$2:$B$8<=B2),$A$2:$B$8),$B$2:$B$8,">"&IF(($A$2:$B$8>=A2)*($A$2:$B$8<=B2),$A$2:$B$8)))

逻辑解析:

  • 通过数组判断筛选出当前时段内的所有事件点
  • 对每个点统计并发数后取最大值,实现和方案1相同的效果,适配旧版Excel的数组计算规则

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 06:20:28