Excel-formel: Sidste n række -

Indholdsfortegnelse

Generisk formel

=ROW()-ROW(rng.firstcell)+1>ROWS(rng)-n

Resumé

For at markere de sidste n rækker i et interval kan du bruge hjælpekolonne med en formel baseret på ROW- og ROWS-funktionerne. I det viste eksempel er formlen i celle E5, kopieret ned,:

=ROW()-ROW(INDEX(data,1,1))+1>ROWS(data)-n

hvor data (B5: E15) og n (G5) er navngivet områder.

Denne formel returnerer SAND, hvis en række er en "sidste n række", og FALSK hvis ikke.

Forklaring

Kernen i denne formel er baseret på en anden formel, der beregner den "aktuelle række" i et interval:

=ROW()-ROW(rng.firstcell)+1

Kort fortalt får vi den aktuelle række i projektmappen, og derefter trækker vi det første række nummer i intervallet plus 1. Resultatet er et justeret række nummer, der begynder med 1. INDEX-funktionen er simpelthen en måde at få den første celle i en given rækkevidde:

ROW(INDEX(data,1,1) // first cell

Dette er kun for nemheds skyld. Formlen kunne omskrives som:

=ROW()-ROW($E$5)+1

Når vi har et aktuelt række nummer, kan vi sammenligne række antallet med de samlede rækker i dataene minus n:

current_row > ROWS(data)-n

Hvis dette udtryk returnerer SAND, er den aktuelle række en af ​​de sidste n rækker, vi leder efter.

Sidste n række i en tabel

Hvis data findes i en Excel-tabel, kan formlen tilpasses således:

=ROW()-@ROW(Table1)+1>ROWS(Table1)-n

Logikken er nøjagtig den samme, men vi bruger en lidt anden tilgang til at få den første celle i tabellen:

@ROW(Table1)

Du kan tænke på @-tegnet som angiver "single":

=ROW(Table1) // returns (5;6;7;8;9;10;11;12;13;14;15) =@ROW(Table1) // returns (5)

Som før returnerer tabelformlen SAND i "sidste n række" og FALSK i andre.

Kun sidste række

For kun at teste for den sidste række kan du bruge en lidt forenklet version af formlen:

=ROW()-ROW(rng.first)+1=ROWS(rng)

Interessante artikler...