Excel 如何获取动态数组中每行的总和?

Excel 如何获取动态数组中每行的总和?,excel,excel-365,Excel,Excel 365,我有一个0和1的2D动态数组(例如B1#)。我想计算每行中1的数量。这可以使用每行的总和或每行上的COUNTIFS来完成 我的目标是有一个单独的动态数组公式,它将对每一行进行求和/计数,从而根据2D动态数组中的行数自动溢出 我该怎么做 我尝试的是: 我在A1#as序列(行(B1#))中添加了一个支持列 我尝试了SUM(索引(B1#,A1#,0)),但显然这不起作用,因为SUM必须返回一个值,而我希望在行(B1#)之间出现总计溢出 我尝试了COUNTIFS(索引(B1#,A1#,0),1),但这

我有一个0和1的2D动态数组(例如B1#)。我想计算每行中1的数量。这可以使用每行的总和或每行上的COUNTIFS来完成

我的目标是有一个单独的动态数组公式,它将对每一行进行求和/计数,从而根据2D动态数组中的行数自动溢出

我该怎么做

我尝试的是:

  • 我在A1#as序列(行(B1#))中添加了一个支持列
  • 我尝试了SUM(索引(B1#,A1#,0)),但显然这不起作用,因为SUM必须返回一个值,而我希望在行(B1#)之间出现总计溢出
  • 我尝试了COUNTIFS(索引(B1#,A1#,0),1),但这也导致了一个值也是#值
MMULT()
SEQUENCE()
可能适合您。试试下面的配方

=MMULT(B1:E14,SEQUENCE(COLUMNS(B1:E14),,,0))

您能提供一些样本数据吗?每行是否有多个列?或者只有单列
B#
?是的,多列,正如我提到的,它是一个只有0和1的2D数组。数据没什么大不了的。但是您在公式中只使用了一列。A1#=序列(行(B1#)),因此这是一个单列1D数组。B1#是一个2D数组,它有几个列,它仍然可以被称为B1#::啊!我没有想到这个结果。谢谢我试过这个,原理上就像你在截图中做的一样。但我不确定为什么它在我的实际表中不起作用,只是给了我#值。让我检查一下。我检查并计算出,对于更多的行或列,MMULT只适用于max 2x2矩阵,MMULT的结果是#值。你知道为什么当你能用4x4做这件事的时候,我会受到限制吗?无论如何,我的2D数组有数千行,我确信MMULT在这种情况下不起作用。您可以通过google drive或dropbox共享示例工作簿吗?我不能假设你的数字,现在一切都解决了。屏幕截图中显示的公式有错误。它恰好起作用,因为在您的示例中,n(行)=n(列)。它应该是顺序(列(B1:E4),,,0)。对于MMULT-->n(数组1列)=n(数组2行)。请把它改一下,这样我就可以把它标为答案了。我犯了个错误。我会修正我的答案。