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

Excel多条件统计优化需求:按月份星期统计指定列特定字符次数

优化Excel统计公式:按月份、星期几、B列含特定字符计数

问题分析

现有公式未纳入B列含特定字符的条件,且因引用整列导致计算效率极低。需要实现:统计指定月份中,对应星期几且B列包含“π”的记录次数。

修正后的高效公式

基础优化版(兼容所有Excel版本)

用实际数据范围替代整列引用,加入B列条件,同时修正月末日期判断:

=SUMPRODUCT(
    --(Ωράριο!$A$2:$A$10000 >= DATE(LEFT($A2,4), RIGHT($A2,2), 1)),
    --(Ωράριο!$A$2:$A$10000 <= EOMONTH(DATE(LEFT($A2,4), RIGHT($A2,2), 1), 0)),
    --(TEXT(Ωράριο!$A$2:$A$10000, "ddd") = B$1),
    --(ISNUMBER(SEARCH("π", Ωράριο!$B$2:$B$10000)))
)
  • 关键优化点:将Ωράριο.$A:$A改为实际数据范围(如$A$2:$A$10000),大幅减少计算行数
  • B列条件:ISNUMBER(SEARCH("π", ...))判断B列是否包含“π”,需区分大小写则替换为FIND
  • 月末修正:用EOMONTH自动获取当月最后一天,避免DATE(...,31)在小月(如2月、4月)的错误

进阶高效版(Excel 365/2021)

用LET函数缓存中间结果,减少重复计算,进一步提升效率:

=LET(
    起始日期, DATE(LEFT($A2,4), RIGHT($A2,2), 1),
    结束日期, EOMONTH(起始日期, 0),
    日期列, Ωράριο!$A$2:$A$10000,
    星期列, TEXT(日期列, "ddd"),
    B列内容, Ωράριο!$B$2:$B$10000,
    SUMPRODUCT(
        --(日期列 >= 起始日期),
        --(日期列 <= 结束日期),
        --(星期列 = B$1),
        --(ISNUMBER(SEARCH("π", B列内容)))
    )
)

效率提升核心

  • 避免整列引用:仅引用包含数据的行,而非整个A/B列
  • 减少重复计算:用LET复用中间结果,避免多次计算同一日期转换
  • 简化逻辑:用EOMONTH替代手动计算月末,减少出错概率

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 20:21:01