
Formula generică
=ADDRESS(MAX(ROW(rng)),MAX(COLUMN(rng)))
rezumat
Pentru a obține adresa ultimei celule dintr-un interval, puteți utiliza funcția ADRESĂ împreună cu funcțiile ROW, COLUMN și MAX. În exemplul prezentat, formula din F5 este:
=ADDRESS(MAX(ROW(data)),MAX(COLUMN(data)))
unde datele sunt intervalul numit B5: D14.
Explicaţie
Funcția ADRESĂ creează o referință bazată pe un anumit număr de rânduri și coloane. În acest caz, dorim să obținem ultimul rând și ultima coloană folosită de datele de interval denumite (B5: D14).
Pentru a utiliza ultimul rând, folosim funcția ROW împreună cu funcția MAX astfel:
MAX(ROW(data))
Deoarece datele conțin mai multe rânduri, ROW returnează o serie de numere de rând:
(5;6;7;8;9;10;11;12;13;14)
Această matrice merge direct la funcția MAX, care returnează cel mai mare număr:
MAX((5;6;7;8;9;10;11;12;13;14)) // returns 14
Pentru a obține ultima coloană, folosim funcția COLUMN în același mod:
MAX(COLUMN(data))
Deoarece datele conțin trei rânduri, COLUMNA returnează o matrice cu trei numere de coloane:
(2,3,4)
iar funcția MAX returnează din nou cel mai mare număr:
MAX((2,3,4)) // returns 4
Ambele rezultate sunt returnate direct la funcția ADRESĂ, care construiește o referință la celula din rândul 14, coloana 4:
=ADDRESS(14,4) // returns $D$14
Dacă doriți o adresă relativă în loc de o referință absolută, puteți furniza 4 pentru al treilea argument astfel:
=ADDRESS(MAX(ROW(data)),MAX(COLUMN(data)),4) // returns D14
Alternativă la funcția CELL
Deși nu este evident, funcția INDEX returnează o referință, deci putem folosi funcția CELL cu INDEX pentru a obține adresa ultimei celule dintr-un interval ca acesta:
=CELL("address",INDEX(data,ROWS(data),COLUMNS(data)))
În acest caz, folosim funcția INDEX pentru a obține o referință la ultima celulă din interval, pe care o determinăm trecând rândurile totale și coloanele totale pentru datele intervalului în INDEX. Primim rânduri totale cu funcția ROWS și coloane totale cu funcția COLUMNS:
ROWS(data) // returns 10 COLUMNS(data) // returns 3
Cu tabloul furnizat ca date, INDEX returnează apoi o referință la celula D14:
INDEX(data,10,3) // returns reference to D14
Apoi funcția CELL cu „adresa”, pentru a afișa adresa.
Notă: Funcția CELL este o funcție volatilă care poate provoca probleme de performanță în registrele de lucru mari sau complexe.