Sadržaj
Brzi način pretvaranja raspona ćelija u jedan red uz pomoć funkcije TOROW .
Microsoft Excel 365 je uveo nekoliko novih funkcija za obavljanje raznih manipulacija s nizovima. Sa TOROW, možete izvršiti transformacije raspona u red u trenu. Evo liste zadataka koje ova nova funkcija može izvršiti:
Excel funkcija TOROW
Funkcija TOROW u Excelu se koristi za pretvaranje niza ili raspona ćelija u jedan red.
Funkcija uzima ukupno tri argumenta, od kojih je potreban samo prvi.
TOROW(niz, [ignoriraj], [skeniranje po_stupcu])Gdje:
Niz (obavezno) - niz ili raspon za transformaciju u jedan red.
Ignoriraj (opcionalno) - određuje hoće li se zanemariti praznine ili/i greške. Može uzeti jednu od ovih vrijednosti:
- 0 ili izostavljeno (podrazumevano) - zadržati sve vrijednosti
- 1 - zanemariti praznine
- 2 - zanemariti greške
- 3 - zanemari prazna mjesta i greške
Skeniraj_po_koloni (opcionalno) - definira kako skenirati niz:
- FALSE ili izostavljen (zadano) - skenirajte niz horizontalno po redu.
- TRUE - skenirajte niz vertikalno po stupcu.
Savjeti:
- Za transformaciju niza u jednu kolonu, koristite funkciju TOCOL.
- Da biste izvršili obrnutu transformaciju reda u niz, koristite ili funkciju WRAPCOLS za premotavanje u stupce ili funkciju WRAPROWS za premotavanjeniz u redove.
- Da biste redove pretvorili u stupce, koristite funkciju TRANSPOSE.
Dostupnost TOROW
TOROW je nova funkcija koja je podržana samo u Excelu za Microsoft 365 (za Windows i Mac) i Excel za web.
Osnovna formula TOROW u Excelu
Za jednostavnu transformaciju raspona u red, koristite formulu TOROW u svom osnovnom obliku. Za ovo morate definirati samo prvi argument ( niz ).
Na primjer, da biste pretvorili dvodimenzionalni niz koji se sastoji od 3 stupca i 3 reda u jedan red, formula je:
=TOROW(A3:C6)
Formulu unosite u samo jednu ćeliju (A10 u našem slučaju), a ona se automatski prelijeva u onoliko ćelija koliko je potrebno da zadrži sve rezultate. U Excel terminima, opseg izlaza okružen tankim plavim okvirom naziva se raspon prosipanja.
Kako ova formula funkcionira:
Prvo, dostavljeni raspon ćelija se transformira u dvodimenzionalni niz. Obratite pažnju na stupce razdvojene zarezima i retke razdvojene tačkom i zarezom:
{"Apple","Banana","Cherry";1,2,3;4,5,6;7,8,9}
Zatim funkcija TOROW čita niz s lijeva na desno i pretvara ga u jednodimenzionalni horizontalni niz:
{"Apple","Banana","Cherry",1,2,3,4,5,6,7,8,9}
Rezultat ide u ćeliju A10, iz koje se prelijeva u susjednu ćeliju s desne strane.
Transformiraj raspon u red zanemarujući praznine i greške
Prema zadanim postavkama, funkcija TOROW zadržava sve vrijednosti iz izvornog niza, uključujući prazne ćelije igreške. U izlazu se nulte vrijednosti pojavljuju na mjestu praznih ćelija, što može biti prilično zbunjujuće.
Za izuzimanje praznina , postavite argument ignore na 1:
=TOROW(A3:C5, 1)
Za ignoriranje grešaka , postavite argument ignore na 2:
=TOROW(A3:C5, 2)
Da biste preskočili oba, praznine i greške , koristite 3 za ignore argument:
=TOROW(A3:C5, 3)
Slika ispod prikazuje sva tri scenarija u akciji:
Čitanje niza vodoravno ili okomito
Sa zadanim ponašanjem, funkcija TOROW obrađuje niz horizontalno s lijeva na desno. Da biste skenirali vrijednosti po koloni od vrha do dna, postavljate 3. argument ( scan_by_column ) na TRUE ili 1.
Na primjer, da biste pročitali izvorni raspon po redu, formulu u E3 je:
=TOROW(A3:C5)
Za skeniranje raspona po koloni, formula u E8 je:
=TOROW(VSTACK(A3:C4, A8:C9))
U oba slučaja, rezultirajući nizovi su iste veličine, ali su vrijednosti raspoređene drugačijim redoslijedom.
Spoji više raspona u jedan red
Da biste kombinirali nekoliko nesusjednih raspona u jedan red, prvo ih složite vodoravno ili okomito u jedan niz uz pomoć HSTACK ili VSTACK, respektivno , a zatim upotrijebite funkciju TOROW da pretvorite kombinirani niz u red.
U zavisnosti od vaše poslovne logike, jedna od sljedećih formula će izvršiti zadatak.
Slagati nizove horizontalno i pretvoriti po red
Sa prvimopseg u A3:C4 i drugi opseg u A8:C9, formula ispod će složiti dva opsega horizontalno u jedan niz, a zatim ga transformisati u red koji čita vrednosti s lijeva na desno. Rezultat je u E3 na donjoj slici.
=TOROW(HSTACK(A3:C4, A8:C9))
Složite nizove horizontalno i konvertujte po koloni
Da pročitate naslagani niz vertikalno od vrha do dna, postavljate 3. argument TOROW na TRUE kao što je prikazano na E5 na slici ispod:
=TOROW(HSTACK(A3:C4, A8:C9), ,TRUE)
Složite nizove okomito i konvertirajte po redu
Da biste dodali svaki sljedeći niz na dno prethodnog niza i pročitajte kombinirani niz horizontalno, formula u E12 je:
=TOROW(VSTACK(A3:C4, A8:C9))
Slagati nizove okomito i pretvoriti po stupcu
Za dodavanje svakog sljedećeg niza na dno prethodnog i skeniranje kombinovanog niza okomito, formula je:
=TOROW(VSTACK(A3:C4, A8:C9), ,TRUE)
Da biste bolje razumjeli logiku, promatrajte drugačiji redoslijed vrijednosti u rezultirajući nizovi:
Izdvoji jedinstvene vrijednosti iz raspona u red
Počevši od Microsoft Excel 2016, imamo divnu funkciju, nazvanu UNIQUE, koja lako može dobiti jedinstvene vrijednosti iz jedne kolone ili veslajte. Međutim, ne može se nositi s nizovima s više kolona. Da biste prevazišli ovo ograničenje, koristite funkcije UNIQUE i TOROW zajedno.
Na primjer, da biste izdvojili sve različite (različite) vrijednosti iz raspona A2:C7 i smjestili rezultate u jedan red,formula je:
=UNIQUE(TOROW(A2:C7), TRUE)
Kako TOROW vraća jednodimenzionalni horizontalni niz, postavljamo 2. ( by_col ) argument UNIQUE na TRUE da bismo uporedili stupce sa svakim ostalo.
U slučaju da želite rezultate poredane abecednim redom, umotajte gornju formulu u funkciju SORT:
=SORT(UNIQUE(TOROW(A2:C7), TRUE), , ,TRUE )
Kao i kod UNIQUE, by_col argument SORT-a je također postavljen na TRUE.
Alternativa TOROW za Excel 365 - 2010
U verzijama Excela gdje funkcija TOROW nije dostupna, možete transformirati raspon u jedan red koristeći kombinaciju nekoliko različitih funkcija koje rade u starije verzije. Ova rješenja su složenija, ali funkcionišu.
Za horizontalno skeniranje raspona, generička formula je:
INDEX( opseg , KVOTIENT(COLUMN (A1)-1, COLUMNS( opseg ))+1, MOD(COLUMN(A1)-1, COLUMNS( opseg ))+1)Da biste skenirali opseg okomito, generička formula je :
INDEX( opseg , MOD(COLUMN(A1)-1, KOLONA( opseg ))+1, KVOTIENT(STUPACA (A1)-1, KOLONA(<15)>raspon ))+1)Za naš uzorak skupa podataka u A3:C5, formule imaju ovaj oblik:
Za skeniranje raspona po redu:
=INDEX($A$3:$C$5, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1)
Ova formula je alternativa funkciji TOROW sa 3. argumentom postavljenim na FALSE ili izostavljenim:
=TOROW(A3:C5)
Za skeniranje raspona prema stupac:
=INDEX($A$3:$C$5, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1)
Ova formula je ekvivalentna funkciji TOROW sa 3. argumentom postavljenim naTAČNO:
=TOROW(A3:C5, ,TRUE)
Imajte na umu da za razliku od funkcije dinamičkog niza TOROW, ove tradicionalne formule treba unijeti u svaku ćeliju u kojoj želite da se rezultati pojave. U našem slučaju, prva formula (po redu) ide u E3 i kopira se kroz M3. Druga formula (po koloni) slijeće u E8 i povlači se kroz M8.
Da bi se formule ispravno kopirale, zaključavamo opseg koristeći apsolutne reference ($A$3:$C$5). Imenovani raspon će također biti dobar.
Ako ste kopirali formule u više ćelija nego što je potrebno, #REF! greška će se pojaviti u "dodatnim" ćelijama. Da biste to popravili, umotajte svoju formulu u funkciju IFERROR na sljedeći način:
=IFERROR(INDEX($A$3:$C$5, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1), "")
Kako ove formule funkcioniraju
U nastavku je detaljan pregled prve formule koja raspoređuje vrijednosti po redu:
=INDEX($A$3:$C$5, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1)
U srcu formule koristimo funkciju INDEX da dobijemo vrijednost ćelije na osnovu njenog relativnog položaja u raspon.
broj reda se izračunava po ovoj formuli:
QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1
Ideja je da se proizvede niz brojeva koji se ponavlja kao što je 1,1 ,1,2,2,2,3,3,3, … gdje se svaki broj ponavlja onoliko puta koliko ima stupaca u izvornom rasponu. A evo kako to radimo:
QUOTIENT vraća cjelobrojni dio dijeljenja.
Za brojač koristimo COLUMN(A1)-1, koji vraća serijski broj od 0 u prvoj ćeliji u koju se unosi formula do n (ukupan broj vrijednosti u rasponuminus 1) u poslednjoj ćeliji u koju je uneta formula. U ovom primjeru imamo 0 u E2 i 8 u M3.
Za imenilac koristimo COLUMNS($A$3:$C$5)). Ovo vraća konstantan broj jednak broju stupaca u vašem rasponu (3 u našem slučaju).
Kao rezultat, funkcija QUOTIENT vraća 0 u prve 3 ćelije (E3:G3), na koje smo dodajte 1, tako da je broj reda 1.
Za sljedeće 3 ćelije (H3:J3), QUOTIENT vraća 1, a +1 daje red broj 2. I tako dalje.
Da biste izračunali broj kolone , gradite odgovarajući niz brojeva koristeći MOD funkciju:
MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+1
Pošto postoje 3 kolone u našem rasponu, niz mora izgledati kao : 1,2,3,1,2,3,…
Funkcija MOD vraća ostatak nakon dijeljenja.
U E3, MOD(COLUMN(A1)-1, COLUMNS($ A$3:$C$5))+
postaje
MOD(1-1, 3)+1)
i vraća 1.
U F3, MOD(COLUMN(B1)-1, COLUMNS($A$3:$C$5))+
postaje
MOD(2-1, 3)+1)
i vraća 2.
Kada su brojevi redaka i stupca uspostavljeni, INDEX lako dohvaća vrijednost na presjeku tog reda i stupca.
U E3, INDEX($A$3 :$C$5, 1, 1) vraća vrijednost iz 1. reda i 1. kolone referentnog raspona, tj. iz ćelije A3.
U F3, INDEX($A$3:$C$5, 1, 2) vraća vrijednost iz 1. reda i 2. kolone, tj. iz ćelije B3.
I tako dalje.
Druga formula koja skenira raspon po stupcima, radi usličan način. Razlika je u tome što koristimo MOD za izračunavanje broja reda i QUOTIENT da odredimo broj kolone.
Funkcija TOROW ne radi
Ako funkcija TOROW rezultira greškom, to je najvjerovatnije jedan od ovih razloga:
#NAME? error
S većinom Excel funkcija, #NAME? greška je jasan pokazatelj da je ime funkcije pogrešno napisano. Uz TOROW, to također može značiti da funkcija nije dostupna u vašem Excelu. Ako vaša Excel verzija nije 365, pokušajte koristiti alternativu TOROW.
#NUM error
Greška #NUM označava da vraćeni niz ne može stati u red. Najčešće se to događa kada referencirate cijele stupce i/ili redove umjesto manjeg raspona.
#SPILL error
U većini slučajeva, #SPILL greška sugerira da je red u kojem koju ste unijeli u formulu nema dovoljno praznih ćelija u koje možete proslijediti rezultate. Ako su susjedne ćelije vizualno prazne, uvjerite se da u njima nema razmaka ili drugih znakova koji se ne ispisuju. Za više informacija pogledajte Što znači greška #SPILL u Excelu.
Tako koristite funkciju TOROW u Excelu za pretvaranje 2-dimenzionalnog niza ili raspona u jedan red. Zahvaljujem vam na čitanju i nadam se da se vidimo na našem blogu sljedeće sedmice!
Vježbajte radnu svesku za preuzimanje
Excel funkcija TOROW - primjeri formule (.xlsx datoteka)