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

Excel技巧:统计指定日期范围内的可见非空单元格数量

带日期条件的可见非空单元格统计方案

要实现指定日期范围内、可见行中B列非空单元格的动态统计,可结合SUMPRODUCT与SUBTOTAL函数实现,以下是具体方案:

基础公式(固定日期范围)

假设日期数据存储在'REINSPECTION W/ OVR'工作表的A列,要统计的非空单元格在B列,日期范围为2023年1月1日至3月31日,公式如下:

=SUMPRODUCT(
    SUBTOTAL(3, OFFSET('REINSPECTION W/ OVR'!B3:B, ROW('REINSPECTION W/ OVR'!B3:B)-ROW('REINSPECTION W/ OVR'!B3), 0, 1)),
    --('REINSPECTION W/ OVR'!A3:A >= DATE(2023,1,1)),
    --('REINSPECTION W/ OVR'!A3:A <= DATE(2023,3,31)),
    --('REINSPECTION W/ OVR'!B3:B <> "")
)

公式各部分说明

  • SUBTOTAL(3, OFFSET(...)):逐行判断B列单元格是否为可见且非空(SUBTOTAL(3)对应COUNTA,会忽略筛选/手动隐藏的行;若需仅忽略筛选隐藏行,改用SUBTOTAL(103))
  • --('REINSPECTION W/ OVR'!A3:A >= DATE(2023,1,1)):将A列日期≥起始日期的条件转换为1/0数组(符合条件为1,否则为0)
  • --('REINSPECTION W/ OVR'!A3:A <= DATE(2023,3,31)):同理,判断日期≤结束日期的条件
  • --('REINSPECTION W/ OVR'!B3:B <> ""):判断B列单元格非空的条件
  • SUMPRODUCT:将上述数组对应相乘后求和,最终得到符合所有条件的可见单元格数量

动态日期范围(引用单元格)

若要让日期范围可通过单元格动态修改(比如将起始日期放在Sheet1!C1,结束日期放在Sheet1!C2),修改公式如下:

=SUMPRODUCT(
    SUBTOTAL(3, OFFSET('REINSPECTION W/ OVR'!B3:B, ROW('REINSPECTION W/ OVR'!B3:B)-ROW('REINSPECTION W/ OVR'!B3), 0, 1)),
    --('REINSPECTION W/ OVR'!A3:A >= Sheet1!C1),
    --('REINSPECTION W/ OVR'!A3:A <= Sheet1!C2),
    --('REINSPECTION W/ OVR'!B3:B <> "")
)

注意事项

  • 若实际日期列不是A列,需将公式中所有A3:A替换为对应日期列的引用
  • 公式支持筛选、手动隐藏行的动态更新,修改筛选条件或隐藏行后结果会自动刷新

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 16:52:56