在 Excel 中通过过滤器使用 SUMPRODUCT

在 Excel 中通过过滤器使用 SUMPRODUCT

我在使用过滤器时遇到问题SUMPRODUCT。我有以下公式:

=SUMPRODUCT(LEN(B3:B7)-LEN(SUBSTITUTE(B3:B7;".";"")))

我需要计算范围内有多少个“。”。但是当我使用某些过滤器时,它总是计算该范围内的所有“。”,但我只希望它计算可见的“。”。

普通的:

普通的

过滤后:

过滤后

我怎样才能做到这一点?

答案1

向公式添加一个条件SUMPRODUCT

=SUMPRODUCT((LEN(D3:D8)-LEN(SUBSTITUTE(D3:D8,".","")))*SUBTOTAL(103,OFFSET(D$2,ROW($A$1:$A$6),0)))

小计能够忽略隐藏行。在这种情况下,我们使用,103因为它返回1非空白单元格,这很有用。我们必须使用函数对其进行修改OFFSET,以便它以数组而不是单个值的形式返回计数。关键点在于选择范围。

D3:D8应该是您要计算文本的范围。
D$2应该是该范围正上方的单元格,
$A$1:$A$6可以位于任何列中,但它必须从第 1 行开始,并且具有与您要计算文本的范围一样多的行。我使用它A1:A6只是出于习惯和方便。它只为我们提供了一个数组,用于输入数字,OFFSET以便它可以很好地发挥SUBTOTAL作用SUMPRODUCT

步骤1
第2步

相关内容