Google Sheets中如何统计含指定年份的日期行数量?
Google Sheets 日期年份统计解决方案
可行实现方法
方法1:单年份统计(COUNTIF + YEAR + ARRAYFORMULA)
针对单个目标年份(比如2020),可直接提取日期列的年份后统计:
=COUNTIF(ARRAYFORMULA(YEAR($G$4:$G)), 2020)
原理:YEAR($G$4:$G)提取G列每个日期的年份,ARRAYFORMULA让函数作用于整列,最后COUNTIF统计等于目标年份的数量。
方法2:批量统计所有年份(QUERY函数)
如果需要一次性统计所有出现过的年份对应的行数,推荐用QUERY生成自动汇总表:
=QUERY($G$4:$G, "SELECT YEAR(G), COUNT(G) WHERE G IS NOT NULL GROUP BY YEAR(G) LABEL YEAR(G) '年份', COUNT(G) '行数'")
效果:自动生成两列表格,第一列展示所有存在的年份,第二列对应各年份的行数,无需手动逐个输入年份。
原方案失效原因说明
=COUNTIF($G$4:$G, "*2020"):COUNTIF的通配符仅对文本格式内容生效,若G列是标准日期格式(内部存储为数值),无法匹配到年份字符串。=COUNTIF(text($G$4:$G,"mm/yyyy"), "*2020"):TEXT将日期转为字符串后,mm/yyyy格式生成05/2020这类内容,*2020理论上可匹配,但如果G列存在空白单元格或格式异常,容易导致统计错误,可靠性不如直接提取年份。- 移除周数条件后的原数组公式:正确逻辑应为提取年份后统计,原公式写法错误导致失效。
内容的提问来源于stack exchange,提问作者Evan R.
相关产品推荐
相关产品推荐

