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

如何在Google Sheets中自动显示某列过去5个月的月度平均值

Google Sheets 自动计算并展示过去5个月月度平均值

一、先聚合月度平均值

假设原始数据在A:B列(A列为年月、B列为对应数值),用QUERY函数分组计算每月平均值并按时间倒序排列:

=QUERY(A:B, "SELECT A, AVG(B) WHERE A IS NOT NULL GROUP BY A ORDER BY A DESC", 1)

这个公式会自动生成包含年月和对应平均值的结果集,表头保留,新增月份时会自动更新聚合结果。

二、提取过去5个月的数据

如果不想用辅助列,直接合并公式自动提取最新5个月的结果:

=INDEX(
  QUERY(A:B, "SELECT A, AVG(B) WHERE A IS NOT NULL GROUP BY A ORDER BY A DESC", 1),
  SEQUENCE(MIN(5, COUNTA(QUERY(A:B, "SELECT A WHERE A IS NOT NULL GROUP BY A"))), 2),
  0
)
  • MIN(5, ...) 确保当数据不足5个月时,只显示已有月份的结果,避免报错
  • SEQUENCE 生成对应行数的序列,配合INDEX精准提取前N行数据

三、关于TOROW/CHOSECOLS的问题

你之前尝试的函数没成功,大概率是因为没有先完成月度聚合+倒序排序的前提步骤。先通过QUERY把原始数据整理成按时间倒序的月度平均值列表,再用INDEX+SEQUENCE提取,比单独用TOROW/CHOSECOLS更稳定,且完全无需手动更新公式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 19:29:52