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

如何自动汇总不同工作表中对应保龄选手的积分至汇总表单元格

自动汇总保龄球队选手积分的解决方案

假设你的SUMMARY汇总表中,A列(比如A2:A8)已经列出了所有7位选手的姓名(Bob、John、Rob、Steve、Mike、Jim、Rick),可以用以下公式实现自动汇总:

方案1:通用Excel版本适用(兼容旧版)

在汇总表B2单元格输入公式,然后下拉填充到B8:

=SUM(SUMIF(INDIRECT("Week"&ROW($1:$30)&"!A35:A38"),A2,INDIRECT("Week"&ROW($1:$30)&"!F35:F38")))
  • 旧版Excel(非动态数组版本)输入后需要按 Ctrl+Shift+Enter 完成数组公式输入;
  • 新版Excel(365/2021及以后)直接回车即可。

原理说明

  • INDIRECT("Week"&ROW($1:$30)&"!A35:A38") 自动生成Week1到Week30每个工作表的A35:A38区域引用;
  • SUMIF 在每个周表中匹配当前单元格(A2)的选手姓名,返回对应F列的积分;
  • 外层SUM将所有周表中该选手的积分累加求和。

方案2:无需数组输入的简化版

如果不想用数组输入,可改用SUMPRODUCT函数,在B2输入后直接回车并下拉:

=SUMPRODUCT(SUMIF(INDIRECT("Week"&ROW($1:$30)&"!A35:A38"),A2,INDIRECT("Week"&ROW($1:$30)&"!F35:F38")))

方案3:Excel 365/2021动态数组一键生成

利用动态数组特性,只需在B2输入一次公式,自动填充所有选手的积分:

=BYROW(A2:A8,LAMBDA(name,SUM(SUMIF(INDIRECT("Week"&SEQUENCE(30)&"!A35:A38"),name,INDIRECT("Week"&SEQUENCE(30)&"!F35:F38")))))

注意事项

  • 确保所有周表命名严格为Week1到Week30,无拼写错误或额外空格;
  • 选手姓名需在汇总表和周表中保持完全一致(包括大小写),否则会匹配失败;
  • INDIRECT是易失性函数,工作表变动时会重新计算,30个表的规模下不会影响性能。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.11 23:42:36