EXCEL Reference a cell in the previous visible row

2019-04-09 11:37发布

问题:

How can I reference a cell in the same column in the previous visible row from a filtered range?

回答1:

This is very easy if we prepare to do it.

Say we have data like:

The first step is to introduce a "helper" column. In E2 we enter:

=IF(SUBTOTAL(3,A2:A2)=0,MIN($E$1:E1)-1,SUBTOTAL(3,$A$2:$A2))

and copy down:

Now the cool thing about the "helper" column is that no matter how you filter it, it always shows a simple sequential sequence....let's filter for Alice

This means that any cell can:

  1. retrieve the value in column E
  2. subtract 1 from it
  3. use this value in a Index()/Match() formula to retrieve any value in the previous visible row

EDIT#1:

To answer your question, in C5 we enter:

=INDEX($C$2:$C$21,MATCH(E5-1,$E$2:$E$21,0))

and with no filtering C5 will display $391.00
But with Alice filtering C5 will display $446.00