Excel中基于另一列日期统计数值数量的最优方法咨询
统计Excel不同日期时段对应数值数量的最优方法
针对你有日期列和数值列,需要统计不同日期时段下数值数量的需求,以下是几种高效实用的实现方法:
方法一:数据透视表(最推荐,快速直观)
- 选中日期列和数值列的整个数据区域
- 点击菜单栏「插入」→「数据透视表」,按提示确定透视表放置的位置
- 在右侧数据透视表字段面板里:
- 把「日期」字段拖到「行」区域,「数值」字段拖到「值」区域
- 默认值区域会显示求和,点击值字段的下拉菜单,选择「值字段设置」,改成「计数」即可
- 要按周、月等时段分组的话,右键点击行区域的任意日期,选择「组合」,在弹窗里选你需要的时段(年、月、周等),确认就行
方法二:COUNTIFS函数(自定义时段首选)
如果要统计特定自定义日期范围的数值数量(比如某两个月、某周内),用COUNTIFS函数更灵活:
- 假设日期列是A列,数值列是B列,统计2023年1月1日到1月31日的数值数量,公式写:
最后一个=COUNTIFS(A:A,">=2023/1/1",A:A,"<=2023/1/31",B:B,"<>")B:B,"<>"是排除数值为空的行,不需要的话可以删掉 - 要是批量统计多个时段,先在表格里列好每个时段的起止日期,下拉公式就能自动算出所有结果
方法三:动态数组函数(Excel 365/2021专属,自动更新)
如果你用的是Excel 365或2021版本,结合动态数组函数能实现自动统计,数据更新后结果自动刷新:
- 先提取唯一的日期(或分组后的时段):用
=UNIQUE(A:A)就能得到所有不重复的日期 - 然后对应统计每个日期的数值数量,公式示例(假设C列是
UNIQUE得到的日期):
下拉公式就能自动填充所有日期的统计结果=COUNTIFS(A:A,C2,B:B,"<>") - 要按周/月分组的话,先把日期转成对应格式,比如
=TEXT(A2,"yyyy-mm")得到年月,再用UNIQUE提取唯一时段,最后用COUNTIFS统计就行
内容的提问来源于stack exchange,提问作者Mikail Ismail
相关产品推荐
相关产品推荐

