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

Excel中按姓名统计周度、月度平均值的技术求助

解决方案:按姓名拆分周度/月度平均值

针对你需要在报表页第3、4行按姓名展示周度/月度平均值的需求,结合已有的V(周度)、W(月度)列数据,这里提供两种适配不同场景的公式方案:

场景1:V/W列是周期归属标识(如周数、月份数或「当前周」「当前月」文本)

假设你的日志数据源在「日志」工作表,其中:

  • A列:填写日志的姓名
  • C列:每日需要统计的核心数值(可替换为你的实际数据列)
  • V列:每条记录的周度归属标记(比如用WEEKNUM(TODAY())生成的当前周数,或固定文本「当前周」)
  • W列:每条记录的月度归属标记(比如用MONTH(TODAY())生成的当前月份数,或固定文本「当前月」)
  • 报表页第2行(B2、C2、D2…):需要单独统计的各姓名

周度平均值(报表页第3行,对应B2的姓名)

在B3单元格输入以下公式,然后向右拉填充到其他姓名列:

=IFERROR(AVERAGEIFS(日志!$C:$C, 日志!$A:$A, B$2, 日志!$V:$V, WEEKNUM(TODAY())), 0)

如果V列用的是「当前周」这类文本标识,替换为:

=IFERROR(AVERAGEIFS(日志!$C:$C, 日志!$A:$A, B$2, 日志!$V:$V, "当前周"), 0)

月度平均值(报表页第4行,对应B2的姓名)

在B4单元格输入以下公式,向右拉填充:

=IFERROR(AVERAGEIFS(日志!$C:$C, 日志!$A:$A, B$2, 日志!$W:$W, MONTH(TODAY())), 0)

如果W列用的是「当前月」文本标识,替换为:

=IFERROR(AVERAGEIFS(日志!$C:$C, 日志!$A:$A, B$2, 日志!$W:$W, "当前月"), 0)

场景2:V/W列直接存储单条记录的周度/月度统计值

如果V列是单条日志对应的周度汇总值、W列是月度汇总值,需要按姓名计算这些值的平均,公式可以简化为:

周度平均值(B3)

=IFERROR(AVERAGEIF(日志!$A:$A, B$2, 日志!$V:$V), 0)

月度平均值(B4)

=IFERROR(AVERAGEIF(日志!$A:$A, B$2, 日志!$W:$W), 0)

关键细节说明

  • IFERROR函数:避免因某姓名无对应周期数据时出现#DIV/0!错误,你也可以把返回值0改成"-"这类占位文本
  • 单元格引用:B$2锁定了行号,向右拉公式时会自动匹配C2、D2等不同姓名,无需手动修改
  • 性能优化:如果你的日志数据有固定行范围(比如到1000行),建议用日志!$C$2:$C$1000代替整列引用,提升表格计算速度

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 10:09:10