我在 excel 中工作,我想使用公式 MATCH 来检索列中每个大于零的数字的行。例如,拥有下一列
Number
0
0
6
1
0
8
0
0
0
0
10
我想在其他列中获得以下内容:
Rows
3
4
6
11
¿ 使用 MATCH 公式可以做到这一点吗?如果没有,那么¿如何实现这一目标?
我在 excel 中工作,我想使用公式 MATCH 来检索列中每个大于零的数字的行。例如,拥有下一列
Number
0
0
6
1
0
8
0
0
0
0
10
我想在其他列中获得以下内容:
Rows
3
4
6
11
¿ 使用 MATCH 公式可以做到这一点吗?如果没有,那么¿如何实现这一目标?
假设您的数据在 A2:A12 范围内,然后尝试这个数组公式,它需要使用Ctrl+Shift+Enter而不是单独的 Enter 进行确认。
在 B2
=IFERROR(SMALL(IF($A$2:$A$12>0,ROW($A$2:$A$12)-ROW($A$2)+1),ROWS(B$2:B2)),"")
使用Ctrl+Shift+Enter 确认,然后将其复制下来,直到出现空白单元格。
根据要求调整范围,但不要像公式中的 A:A 那样引用整个列引用。
B1: =MATCH(TRUE,A:A>0, 0) Ctrl+Shift+Enter
B2: =IFERROR(MATCH(TRUE,(A:A>0)*ROW(A:A)>B1, 0),"") Ctrl+Shift+Enter
沿列复制B2
和粘贴B
。
假设您的数据在范围内A2:A12
。
B2
单元格中输入值。B2
然后按Ctrl+ Shift+Enter=IFERROR(AGGREGATE(15,6,IF(A2:A12<>0,ROW()-ROW(A1),NA),ROW()-ROW(B1)),"")
请注意,如果您只选择 B2 并输入公式,那么您将只获得前一个值。如果需要,相应地调整范围。