从多列中筛选出包含 0 的行

从多列中筛选出包含 0 的行

我想从多列的行中过滤掉 0。但是其中一些行可能会为零。其他时候它可以正常工作。

这个解决方案对我来说不起作用:仅过滤多列中值为 0 的行

创建辅助列并对行求和,然后过滤掉 0 的解决方案不起作用,因为有些行刚好 = 0。(见图)。我也无法只对某些列求和,我只需要删除所有列中的 0。

在此处输入图片描述

有人有解决方法吗?

答案1

这可以帮助您:

在此处输入图片描述

怎么运行的:

  • 在单元格 C220 中输入零,这是标准。

  • 输入辅助值 1 和 2,在 A221 和 B221 中以红色显示,您需要扩展它,因为您有很多列。

  • 在单元格 D22 中输入此数组 (CSE) 公式,最后用 Ctrl+Shift+Enter并填充。

    {=IFERROR(INDEX($A$222:$B$225,SMALL(IF((INDEX($A$222:$B$225,,A$221)=$C$220),MATCH(ROW($A$222:$B$225),ROW($A$222:$B$225)),""),ROWS(D221:$D$221)),COLUMNS($A$1:A1)),"")}
    

根据需要调整单元格引用。

答案2

使用辅助列进行求和,其中负数不能抵消正数。例如:

=SUMPRODUCT($B2:$Z2,$B2:$Z2)

将负数与自身相乘,它们就会变成正数。只有一行全是零的数才会变成零。

(我确信可能有办法使用数组函数和 ABS 来实现这一点,但我喜欢这种简单性)

相关内容