Excel技术咨询:基于FORMULATEXT数组统计每日销售案例总数
Excel公式计算每日总销售案例数(基于+分隔的购买记录)
场景回顾
你需要处理的Excel表格场景:
- A2:A11 是客户名称列表
- B1:AE1 对应每日日期列
- 每个客户的当日购买量用
+分隔单次购买数量(比如44+54+10代表该客户当日3次购买) - 要在每列的最后一行(如B12、C12...)计算当日所有客户的总购买案例数
解决方案公式
针对任意日期列(比如C列,对应2日),在C12输入以下公式即可:
=SUMPRODUCT(LEN(C2:C11)-LEN(SUBSTITUTE(C2:C11,"+",""))+1, --(C2:C11<>""))
如果要批量应用到所有日期列,在B12输入公式后,直接拖动填充柄到AE12,公式会自动适配对应列的区域。
公式逐部分解释
这个公式的核心是通过计算+的数量来推导购买次数,再求和:
LEN(C2:C11)-LEN(SUBSTITUTE(C2:C11,"+","")):计算每个单元格中+的数量。比如44+54+10替换掉+后长度减少2,说明有2个+。+1:每个+分隔的是n+1次购买(比如2个+对应3次购买),所以加1得到该客户当日的购买案例数。--(C2:C11<>""):处理空单元格。如果单元格为空,前面的计算会得到0+1=1,这个条件会把空单元格的权重转为0,避免错误统计。SUMPRODUCT:将所有客户的购买案例数相乘后求和(这里第二个参数是0或1,相当于筛选有效行后求和),最终得到当日总案例数。
示例验证
用你给出的示例数据:
- C2=44+54+10 → 2个
+→ 3次 - C3=22+10+40 → 2个
+→3次 - C4=40 →0个
+→1次 - C5=10+10 →1个
+→2次 - C6:C11为空 → 权重0,不计算
总案例数=3+3+1+2=9,和公式计算结果完全一致。
内容的提问来源于stack exchange,提问作者Annie
相关产品推荐
相关产品推荐

