如何在Google Sheets中高效对多个工作表的同位置单元格求和
Google Sheets多连续工作表同位置单元格求和最优方案
方案1:原生工作表范围语法(最高效,无额外依赖)
Google Sheets现已支持和Excel完全一致的连续工作表范围求和语法,你要对50个连续排列的工作表A1求和直接使用以下公式即可:=SUM(Sheet0:Sheet49!A1)
注意:这里的范围是按照底部工作表标签的排列顺序生效的,要求你需要求和的50个工作表在标签栏中是连续排布的,中间不能插入不需要参与求和的工作表。如果你的工作表命名是从Sheet0到Sheet50共51个,对应调整范围为
Sheet0:Sheet50!A1即可。
如果你的工作表名包含空格、特殊字符,需要给表名包裹单引号:=SUM('月度报表 1':'月度报表 50'!A1)
方案2:按表名规则动态匹配(适用于工作表不连续排布的场景)
如果需要求和的工作表在标签栏不是连续排列,但表名有统一规则(比如都是Sheet+数字格式),可以用LAMBDA搭配INDIRECT批量引用,无需手动罗列每个工作表:=SUM(BYROW(SEQUENCE(50,1,0),LAMBDA(num,INDIRECT("Sheet"&num&"!A1"))))
公式说明:
SEQUENCE(50,1,0)生成0到49的连续数字序列,对应50个工作表的后缀编号LAMBDA遍历每个编号,拼接生成对应工作表A1单元格的引用SUM对所有遍历得到的数值求和
注意事项
- 原生范围语法性能最优,属于非易失性函数,调整工作表数据时重算速度更快,优先推荐使用
- 基于INDIRECT的方案属于易失性函数,工作表数量超过200个时可能出现明显卡顿,仅在无法使用原生范围语法时选择
- 使用原生范围语法时,若调整工作表标签的前后顺序,求和范围会自动同步变更,如需固定求和范围要避免随意移动工作表位置
内容的提问来源于stack exchange,提问作者Gianmarco
相关产品推荐
相关产品推荐

