Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel VLOOKUP如果为0,则查找下一个值_Excel - Fatal编程技术网

Excel VLOOKUP如果为0,则查找下一个值

Excel VLOOKUP如果为0,则查找下一个值,excel,Excel,我有这样一份清单: Column1, Column2 c,0 c,5 c,0 a,0 a,1 a,0 b,1 b,0 b,0 a,1 b,1 c,5 我想得到a,b和c的非零值。在执行VLOOKUP时,您会得到第一个值 我想得到这样的东西: Column1, Column2 c,0 c,5 c,0 a,0 a,1 a,0 b,1 b,0 b,0 a,1 b,1 c,5 使用带聚合的索引返回头寸: =INDEX(B:B,AGGREGATE(15,6,ROW($B$2:$B$10)/(($A

我有这样一份清单:

Column1, Column2
c,0
c,5
c,0
a,0
a,1
a,0
b,1
b,0
b,0
a,1
b,1
c,5
我想得到a,b和c的非零值。在执行VLOOKUP时,您会得到第一个值

我想得到这样的东西:

Column1, Column2
c,0
c,5
c,0
a,0
a,1
a,0
b,1
b,0
b,0
a,1
b,1
c,5

使用带聚合的索引返回头寸:

=INDEX(B:B,AGGREGATE(15,6,ROW($B$2:$B$10)/(($A$2:$A$10=D2)*($B$2:$B$10>0)),1))

使用带聚合的索引返回头寸:

=INDEX(B:B,AGGREGATE(15,6,ROW($B$2:$B$10)/(($A$2:$A$10=D2)*($B$2:$B$10>0)),1))

如果您的数据在范围
A1:B9
中,并且
C1:C3
中的唯一值,请在
D列中使用此数组公式:

=VLOOKUP(C1,IF($B$1:$B$9>0,$A$1:$B$9),2,FALSE)

请注意,如果您的数据在范围
A1:B9
中,并且
C1:C3
中的唯一值在
D
列中使用此数组公式,则数组公式将与
Ctrl
+
Shift
+
Enter
一起应用:

=VLOOKUP(C1,IF($B$1:$B$9>0,$A$1:$B$9),2,FALSE)

请注意,数组公式是通过
Ctrl
+
Shift
+
Enter

应用的,是否希望
=sumif(A:A,“A”,B:B)
在数据中起作用?是的,如果我分两步来做,sumif是有效的,但是我想知道是否有一种更直接的方法,
=sumif(a:a,“a”,B:B)
在数据中工作?它适用于您的示例数据。是的,如果我分两步来做,sumif也可以,但我想知道是否有更直接的方法