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

Google Sheets统计每月交易数时12月返回错误值是什么原因?

Google Sheets 统计12月交易笔数异常问题解答

问题根因

  • 你的公式引用了F3:F整列范围,包含大量未录入数据的空单元格。Google Sheets的日期运算规则中,空单元格会被默认识别为日期值1899-12-30,使用MONTH()函数提取该值的月份时会返回12。
  • 统计1-11月数据时,空单元格返回的12不会被计入对应月份的匹配结果,因此数值正常;统计12月数据时,所有空单元格都会被判定为匹配项,和真实12月的交易数据叠加,最终返回远大于实际值的错误整数,这和12月的数值特性直接相关,并非Google Sheets针对12月有特殊设定。

修复方案

方案1:限制引用范围(最简单)

把整列引用修改为实际有数据的范围,比如确认数据最多到2000行,就把公式中的$F$3:F改为$F$3:F2000,避免包含空单元格即可。

方案2:添加空值过滤(兼容性最好)

在ArrayFormula中增加空值判断,过滤掉空单元格后再统计,以统计12月为例,修改后的公式如下:

=IF(COUNTIF(ArrayFormula(IF(INDIRECT($H$12&"!$F$3:F")="",NA(),MONTH(INDIRECT($H$12&"!$F$3:F")))),12)=0,"",COUNTIF(ArrayFormula(IF(INDIRECT($H$12&"!$F$3:F")="",NA(),MONTH(INDIRECT($H$12&"!$F$3:F")))),12))

方案3:优化写法(效率最高)

使用LET函数减少重复计算,同时过滤空值,公式更简洁运行更快:

=LET(
  date_range, FILTER(INDIRECT($H$12&"!$F$3:F"), INDIRECT($H$12&"!$F$3:F")<>""),
  month_count, COUNTIF(ARRAYFORMULA(MONTH(date_range)),12),
  IF(month_count=0,"",month_count)
)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 06:24:05