excel / vba – 在列中find一个特定值的最后一次出现

所以如果我有一个列如:

A1 1 Apple 2 Apple 3 Apple 4 Oj 5 Oj 6 Oj 7 Oj 8 Pear 9 Pear 

我怎么能返回苹果的价值1和3,OJ的4和7等?

公式明智的,你可以使用MATCHfunction,例如对于第一个苹果位置

=MATCH("Apple",A1:A9,0)

最后

=MATCH(2,INDEX(1/(A1:A9="Apple"),0))

或者如果水果按照你的例子(或者仅仅分组)sorting,你可以通过将苹果的数量加到第一个-1

所以在C1中的第一个MATCH函数将是

=COUNTIF(A1:A9,"Apple")+C1-1