如何在Excel 365中使用数组公式对每行多列求和?
Excel 365 单数组公式实现每行求和方案
作为资深Excel用户,你要的单数组公式实现每行求和,用Excel 365的动态数组函数最适配,尤其是考虑到你后续要处理复杂需求,优先推荐BYROW函数,灵活性拉满:
核心公式(假设你的数据区域是
A2:FY2001,对应2000行600列):=BYROW(A2:FY2001, LAMBDA(row, SUM(row)))输入后直接回车,结果会自动溢出到公式所在单元格下方的所有行(比如在C2输入,就会自动填充C2到C2001),完全不用下拉复制。
公式逻辑:
BYROW会遍历你指定的每一行数据,LAMBDA(row, SUM(row))定义了对每一行的操作——把当前行的所有数值求和。后续要改需求(比如每行求加权和、条件求和、甚至自定义计算),只需要替换SUM(row)为对应的逻辑就行,比如加权和可以写成SUMPRODUCT(row, $A$1:$FY$1)(假设权重在第一行)。备选方案(矩阵乘法思路):
如果你习惯传统数组逻辑,也可以用MMULT:=MMULT(A2:FY2001, SEQUENCE(COLUMNS(A2:FY2001),,1,0))原理是用每行数据乘以一个全1的列向量,通过矩阵乘法得到每行的和,但这个方法后续扩展复杂需求不如
BYROW直观,所以优先推荐前者。
注意:Excel 365的动态数组公式不需要按老版本的Ctrl+Shift+Enter,直接回车就能生成溢出结果,数据源更新时求和结果会自动同步。
内容的提问来源于stack exchange,提问作者Freond
相关产品推荐
相关产品推荐

