Excel formula: Poredaj tekst po duljini -

Generička formula

=SORTBY(data,LEN(data),-1)

Sažetak

Za sortiranje tekstualnih nizova po duljini u rastućem ili silaznom redoslijedu možete upotrijebiti formulu koja se temelji na funkcijama SORTBY i LEN. U prikazanom primjeru formula u D5 je:

=SORTBY(B5:B15,LEN(B5:B15),-1)

koja sortira tekstualne vrijednosti u stupcu B prema duljini niza, silaznim redoslijedom.

Obrazloženje

Funkcija SORTBY može sortirati vrijednosti u rasponu s nizom koji ne postoji na radnom listu.

U ovom primjeru želimo sortirati vrijednosti u B5: B15 prema broju znakova koji sadrži svaki niz. Radeći iznutra prema van, koristimo funkciju LEN da bismo dobili duljinu svake vrijednosti:

LEN(B5:B15) // get length of all strings

Budući da LEN-u dajemo niz s 11 vrijednosti, dobivamo niz s 11 duljina:

(5;7;14;6;5;13;9;4;8;6;11)

Svaki broj predstavlja duljinu znaka vrijednosti u B5: B11.

Ovaj se niz vraća izravno funkciji SORTBY kao argument by_array1:

=SORTBY(B5:B15,(5;7;14;6;5;13;9;4;8;6;11),-1)

Funkcija SORTBY omogućuje sortiranje na temelju jednog ili više polja "sortiraj po", sve dok su dimenzije kompatibilne s izvornim podacima. U ovom slučaju postoji 11 redaka u izvornim podacima i 11 redaka u polju koje je vratio LEN, tako da je zahtjev zadovoljen.

Funkcija SORTBY koristi niz duljina koje je vratio LEN za sortiranje vrijednosti u B5: B15, a sortirane rezultate vraća u D5 u dinamičkom nizu. Budući da je redoslijed sortiranja postavljen na -1, vrijednosti se sortiraju u obrnutom (silaznom) redoslijedu po duljini. Koristite pozitivnu 1 za sortiranje u rastućem redoslijedu.

Zanimljivi članci...