MS Excel:Sumproduct 仅可见行(使用 sumproduct 和 subtotal(9,array))

MS Excel:Sumproduct 仅可见行(使用 sumproduct 和 subtotal(9,array))

非常简单。

我想使用SUMPRODUCT但仅限于可见的行。

我试过了=SUMPRODUCT(A2:A10, SUBTOTAL(9,B2:B10))......没有用,即使作为数组公式。

我可能忽略了一些显而易见的东西,但是...为什么这不起作用?我怎样才能让它工作?

答案1

为此,请使用以下公式:

=SUMPRODUCT(A2:A10,SUBTOTAL(9,OFFSET(B2:B10,ROW(B2:B10)-MIN(ROW(B2:B10)),0,1)))

在此处输入图片描述

正如评论中所说:请记住,这SUBTOTAL不适用于手动隐藏的行。只有由于“过滤器”而被隐藏的行才会在计算中被跳过。

编辑
感谢 XOR LX:如果将参数增加SUBTOTAL100,它也将适用于手动隐藏的行。那么公式将是:

=SUMPRODUCT(A2:A10,SUBTOTAL(109,OFFSET(B2:B10,ROW(B2:B10)-MIN(ROW(B2:B10)),0,1)))

答案2

=SUMPRODUCT(A2:A10,SUBTOTAL(109,OFFSET(B2:B10,ROW(B2:B10)-MIN(ROW(B2:B10)),0,1)))

它将对手动或通过过滤器隐藏的行起作用。

答案3

或者,您可以添加一个新列来输出0或者1如果行被隐藏,然后将该数组添加到SumProduct公式中。

该列的公式IsHidden

= IF( SUBTOTAL(103,A2)=1, 1, 0)

相关内容