第一个非零结果的索引匹配

问题描述 投票:0回答:2

[尝试进行索引/匹配查找以找到多个匹配项中的第一个非零结果。不确定确切如何执行此操作。下面的示例数据。

Foo 1
bar 0
bar 2

想要执行以下操作:

=INDEX(B:B,MATCH("Foo",A:A,0))
=INDEX(B:B,MATCH("bar",B:B,0))

想要上面的结果返回1和2,但是显然基于上表将得到1和0。如何从匹配中排除0值?

sorting google-sheets filter match google-sheets-formula
2个回答
1
投票

尝试:

=FILTER(B:B, B:B<>0)

如果还不够,您可以做:

=INDEX(SORTN(FILTER(A:B, B:B<>0), 9^9, 2, 1, 0),,2)

即使还不够尝试:

=INDEX(SORT(SORTN(FILTER({A:B, ROW(A:A)}, B:B<>0), 9^9, 2, 1, 0), 3, 1),,2)

0
投票

过滤和排序是一种方法,但是如果您确实想通过经典索引/匹配来进行,则需要

=index(B:B,match(1,(A:A="Bar")*(B:B<>0),0))
© www.soinside.com 2019 - 2024. All rights reserved.