
Генеричка формула
=ROW()-ROW(rng.firstcell)+1>ROWS(rng)-n
Резиме
Да бисте означили последњих н редова у опсегу, можете користити помоћни ступац са формулом заснованом на функцијама РЕД и РЕД. У приказаном примеру, формула у ћелији Е5, копирана доле, је:
=ROW()-ROW(INDEX(data,1,1))+1>ROWS(data)-n
где су подаци (Б5: Е15) и н (Г5) именовани опсези.
Ова формула враћа ТРУЕ ако је ред „последњи н ред“ и ФАЛСЕ ако није.
Објашњење
Језгро ове формуле заснива се на другој формули која израчунава "тренутни ред" у опсегу:
=ROW()-ROW(rng.firstcell)+1
Укратко, добијамо тренутни ред у радној свесци, а затим одузимамо број првог реда опсега плус 1. Резултат је прилагођени број реда који почиње на 1. Функција ИНДЕКС је једноставно начин да се добије прва ћелија у датом домет:
ROW(INDEX(data,1,1) // first cell
Ово је само за практичност. Формула би се могла преписати као:
=ROW()-ROW($E$5)+1
Једном када имамо тренутни број реда, можемо упоредити број реда са укупним бројем редова у подацима умањеним за н:
current_row > ROWS(data)-n
Ако овај израз врати ИСТИНА, тренутни ред је један од последњих н редова које тражимо.
Последњих н редова у табели
Ако су подаци у Екцел табели, формула се може прилагодити овако:
=ROW()-@ROW(Table1)+1>ROWS(Table1)-n
Логика је потпуно иста, али користимо мало другачији приступ да бисмо добили прву ћелију у табели:
@ROW(Table1)
Можете сматрати да знак @ означава „неожењен“:
=ROW(Table1) // returns (5;6;7;8;9;10;11;12;13;14;15) =@ROW(Table1) // returns (5)
Као и раније, формула табеле враћа ТРУЕ у „последњих н редова“ и ФАЛСЕ у остале.
Само последњи ред
Да бисте тестирали само последњи ред, можете користити мало поједностављену верзију формуле:
=ROW()-ROW(rng.first)+1=ROWS(rng)