Excel vzorec: posledních n řádků -

Obsah

Obecný vzorec

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

souhrn

Chcete-li označit posledních n řádků v rozsahu, můžete použít pomocný sloupec se vzorcem založeným na funkcích ROW a ROWS. V zobrazeném příkladu je vzorec v buňce E5 zkopírovaný dolů:

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

kde údaje (B5: E15) a n (G5) jsou pojmenované oblasti.

Tento vzorec vrací TRUE, pokud je řádek „poslední n řádek“, a FALSE, pokud ne.

Vysvětlení

Jádro tohoto vzorce je založeno na jiném vzorci, který vypočítává „aktuální řádek“ v rozsahu:

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

Stručně řečeno, dostaneme aktuální řádek v sešitu, poté odečteme číslo prvního řádku rozsahu plus 1. Výsledkem je upravené číslo řádku, které začíná na 1. Funkce INDEX je jednoduše jedním ze způsobů, jak získat první buňku v daném rozsah:

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

To je pouze pro pohodlí. Vzorec lze přepsat jako:

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

Jakmile máme aktuální číslo řádku, můžeme porovnat číslo řádku s celkovým počtem řádků v datech bez n:

current_row > ROWS(data)-n

Pokud tento výraz vrací TRUE, aktuální řádek je jedním z posledních n řádků, které hledáme.

Posledních n řádků v tabulce

Pokud jsou data v tabulce aplikace Excel, lze vzorec upravit takto:

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

Logika je přesně stejná, ale k získání první buňky v tabulce používáme mírně odlišný přístup:

@ROW(Table1)

Můžete si představit, že znak @ označuje „single“:

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

Stejně jako dříve vrátí vzorec tabulky hodnotu TRUE v "posledních n řádcích" a FALSE v ostatních.

Pouze poslední řádek

Chcete-li otestovat pouze poslední řádek, můžete použít mírně zjednodušenou verzi vzorce:

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

Zajímavé články...