Excel TOCOL funkcija za pretvaranje raspona u jednu kolonu

  • Podijeli Ovo
Michael Brown

Jednostavan način transformacije niza ili raspona u stupac pomoću funkcije TOCOL.

Mogućnost transponiranja podataka iz stupaca u redove i obrnuto postoji u Excelu već prilično neko vrijeme. Ali pretvaranje niza ćelija u jednu kolonu bio je težak zadatak za razbijanje. Sada se to konačno menja. Microsoft je predstavio novu funkciju, nazvanu TOCOL, koja može izvršiti transformaciju niza u kolonu za tren. Ispod je lista zadataka koje ova nova funkcija može lako riješiti.

    Excel funkcija TOCOL

    Funkcija TOCOL u Excelu pretvara niz ili raspon ćelija u jednu stupac.

    Funkcija uzima tri argumenta, ali je potreban samo prvi.

    TOCOL(niz, [ignoriraj], [skeniraj_po_stupac])

    Gdje:

    Niz (obavezno) - niz ili raspon za transformaciju u stupac.

    Zanemari (opcionalno) - definira da li će se zanemariti praznine ili/ili greške. Može biti jedna od ovih vrijednosti:

    • 0 ili izostavljena (podrazumevano) - zadržati sve vrijednosti
    • 1 - zanemariti praznine
    • 2 - zanemariti greške
    • 3 - zanemari prazna mjesta i greške

    Skeniraj_po_koloni (opcionalno) - određuje hoće li se skenirati niz horizontalno ili okomito:

    • FALSE ili izostavljeno (podrazumevano) - skeniraj niz po red s lijeva na desno.
    • TRUE - skeniraj niz po koloni od vrha do dna.

    Savjeti:

    • Da konvertujete niz u jedan red, koristite TOROWfunkcija.
    • Da izvršite suprotnu transformaciju kolone u niz, koristite ili funkciju WRAPCOLS za premotavanje po stupac ili funkciju WRAPROWS za premotavanje po red.
    • Da biste transponirali niz iz horizontalnog u okomito ili obrnuto, tj. promijenite redove u stupce, koristite funkciju TRANSPOSE.

    Dostupnost TOCOL-a

    TOCOL je nova funkcija, koja je podržana u Excelu za Microsoft 365 (za Windows i Mac) i Excel za web.

    Osnovna formula TOCOL za transformaciju raspona u stupac

    Formula TOCOL u svom najjednostavnijem obliku zahtijeva samo jedan argument - array . Na primjer, da biste postavili dvodimenzionalni niz koji se sastoji od 3 stupca i 4 reda u jednu kolonu, formula je:

    =TOCOL(A2:C5)

    Formula se unosi samo u jednu ćeliju (E2 u ovaj primjer) i automatski se prelijeva u donje ćelije. U smislu Excela, rezultat se naziva raspon prosipanja.

    Kako ova formula funkcionira:

    Tehnički, raspon A2:C5 se prvo pretvara u dvodimenzionalni niz. Obratite pažnju na redove odvojene tačkom i zarezom i stupce razdvojene zarezima:

    {"Apple","Banana","Cherry";1,0,3;4,#N/A,6;7,8,9}

    Funkcija TOCOL skenira niz s lijeva na desno i transformira ga u jednodimenzionalni vertikalni niz:

    {"Apple";"Banana";"Cherry";1;0;3;4;#N/A;6;7;8;9}

    Rezultat se stavlja u ćeliju E2, iz koje se prelijeva u ćelije ispod.

    Kako koristiti TOCOL funkciju u Excelu - primjeri formule

    Da biste bolje razumjelimogućnosti funkcije TOCOL i koje zadatke može pokriti, pogledajmo neke primjere formule.

    Transformirajte niz u stupac zanemarujući praznine i greške

    Kao što ste možda primijetili u prethodnom primjeru , zadana formula TOCOL zadržava sve vrijednosti iz izvornog niza, uključujući prazne ćelije i greške.

    U rezultirajućem nizu, prazne ćelije su predstavljene nulama, što može biti prilično zbunjujuće, posebno ako originalni niz ima 0 vrijednosti. Rješenje je preskočiti praznine . Za ovo, postavite 2. argument na 1:

    =TOCOL(A2:C5, 1)

    Da ignorirate greške , postavite 2. argument na 2:

    =TOCOL(A2:C5, 2)

    Da biste isključili i praznine i greške , koristite 3 za argument ignore :

    =TOCOL(A2:C5, 3)

    Skeniraj niz horizontalno ili okomito

    Sa zadanim argumentom scan_by_column (FALSE ili izostavljen), funkcija TOCOL skenira niz horizontalno po red. Za obradu vrijednosti po stupcu, postavite ovaj argument na TRUE ili 1. Na primjer:

    =TOCOL(A2:C5, ,TRUE)

    Obratite pažnju da su, u oba slučaja, vraćeni nizovi iste veličine, ali su vrijednosti raspoređene drugačijim redosledom.

    Kombinirajte više raspona u jedan stupac

    Ako imate posla s nekoliko nesusjednih raspona, tada prvo možete kombinirati raspone okomito u jedan niz uz pomoć funkcije VSTACK i zatim koristite TOCOL da transformišete kombinovani niz u kolonu.

    Pod pretpostavkom da je prvi raspon A2:C4, a drugi raspon A8:C9, formula poprima ovaj oblik:

    =TOCOL(VSTACK(A2:C4, A8:C9))

    Ova formula pokazuje zadano ponašanje - čita kombinovane nizove horizontalno slijeva desno kao što je prikazano u koloni E na donjoj slici.

    Za čitanje vrijednosti vertikalno od vrha do dna, postavite 3. argument TOCOL-a na TRUE:

    =TOCOL(VSTACK(A2:C4, A8:C9), ,TRUE)

    Obratite pažnju da u ovom slučaju formula prvo vraća vrijednosti iz kolone A oba niza, zatim iz kolone B i tako dalje. Razlog je taj što TOCOL skenira jedan naslagani niz, a ne originalne pojedinačne opsege.

    Ako vaša poslovna logika zahtijeva slaganje originalnih raspona vodoravno, a ne okomito, tada koristite funkciju HSTACK umjesto VSTACK.

    Da dodate svaki sljedeći niz desno od prethodnog niza i pročitate kombinovane nizove horizontalno, formula je:

    =TOCOL(HSTACK(A2:C4, A8:C10))

    Da biste dodali svaki sledeći niz desno od prethodnog niza i skenirali kombinovane nizove okomito, formula je:

    =TOCOL(HSTACK(A2:C4, A8:C10), ,TRUE)

    Izdvoji jedinstvene vrijednosti iz raspona s više kolona

    Excel UNIQUE funkcija može lako pronaći jedinstvene vrijednosti u jednom stupcu ili redu, kao i vratiti jedinstvene redove, ali ne može izdvojiti jedinstvene vrijednosti iz niz sa više kolona. Rješenje je koristiti ga zajedno s TOCOL funkcijom.

    Na primjer, da se izvuku sve različite (različite) vrijednosti iz rasponaA2:C7, formula je:

    =UNIQUE(TOCOL(A2:C7))

    Dodatno, možete umotati gornju formulu u funkciju SORT da uredite vraćeni niz abecednim redom:

    =SORT(UNIQUE(TOCOL(A2:C7)))

    Kako pretvoriti raspon u stupac u programu Excel 365 - 2010

    U verzijama Excela gdje funkcija TOCOL nije podržana, postoji nekoliko alternativnih načina za transformaciju raspona ćelija u stupac. Ova rješenja su prilično zeznuta, ali u svakom slučaju funkcioniraju.

    Za čitanje raspona po redu:

    INDEX( opseg , QUOTIENT(ROW(A1)-1, COLUMNS( raspon ))+1, MOD(ROW(A1)-1, COLUMNS( opseg ))+1)

    Za čitanje raspona po stupcu:

    INDEX( opseg , MOD(RED(A1)-1, REDOVI( opseg ))+1, KVOTIENT(RED(A1)-1, REDOVI( opseg ))+1 )

    Za naš skup podataka uzorka, formule su sljedeće:

    Za skeniranje raspona horizontalno s lijeva na desno :

    =INDEX($A$2:$C$5, QUOTIENT(ROW(A1)-1, COLUMNS($A$2:$C$5))+1, MOD(ROW(A1)-1, COLUMNS($A$2:$C$5))+1)

    Ova formula je ekvivalentna funkciji TOCOL sa 3. argumentom postavljenim na FALSE ili izostavljenim:

    =TOCOL(A2:C5)

    Za skeniranje raspona vertikalno od vrha do dna :

    =INDEX($A$2:$C$5, MOD(ROW(A1)-1, ROWS($A$2:$C$5))+1, QUOTIENT(ROW(A1)-1, ROWS($A$2:$C$5))+1)

    Ova formula je uporediva sa funkcijom TOCOL sa 3. argumentom postavljenim na TRUE:

    =TOCOL(A2:C5, ,TRUE)

    Za razliku od TOCOL-a, alternativne formule treba unijeti u svaki ćeliju u kojoj želite da se prikažu rezultati. U našem slučaju, formule idu u ćelije E2 (po redu) i G2 (po koloni), a zatim se kopiraju dole u red 13.

    Ako se formule kopiraju u više redova nego što je potrebno, a#REF! greška će se pojaviti u "dodatnim" ćelijama. Da biste spriječili da se to dogodi, možete ugnijezditi formule u funkciju IFERROR na sljedeći način:

    =IFERROR(INDEX($A$2:$C$5, QUOTIENT(ROW(A1)-1, COLUMNS($A$2:$C$5))+1, MOD(ROW(A1)-1, COLUMNS($A$2:$C$5))+1), "")

    Primijetite da za ispravno kopiranje formula zaključavamo raspon koristeći apsolutne reference ćelije ($ A$2:$C$5). Umjesto toga, možete koristiti imenovani raspon.

    Kako funkcioniraju ove formule

    U nastavku je detaljna analiza prve formule koja raspoređuje ćelije po redovima:

    =INDEX($A$2:$C$5, QUOTIENT(ROW(A1)-1, COLUMNS($A$2:$C$5))+1, MOD(ROW(A1)-1, COLUMNS($A$2:$C$5))+1)

    Ideja je koristiti funkciju INDEX za vraćanje vrijednosti određene ćelije na osnovu njenih relativnih brojeva redova i stupaca u rasponu.

    broj reda se izračunava ovom kombinacijom :

    QUOTIENT(ROW(A1)-1, COLUMNS($A$2:$C$5))+1

    QUOTIENT vraća cijeli broj dijeljenja.

    Za brojivac , koristite ROW(A1)-1, koji vraća serijski broj od 0 u E2 (prva ćelija u koju je unesena formula) do 11 u E13 (posljednja ćelija u koju je unesena formula).

    Imenilac imenilac iznosi COLUMNS($A $2:$C$5)) je konstantan i jednak je broju kolona u vašem rasponu (3 u našem slučaju).

    Sada, ako provjerite rezultat KVOTIENTA za prve 3 ćelije (E2:E4) , vidjet ćete da je jednako 0 (jer je cijeli broj dijeljenja nula). Dodavanje 1 daje red broj 1.

    Za sljedeće 3 ćelije (E5:E5), QUOTIENT vraća 1, a operacija +1 daje red broj 2. I tako dalje.

    Drugim riječima, ovaj dio formule stvara ponavljanjeniz brojeva kao što su 1,1,1,2,2,2,3,3,3,4,4,4,… Svaki broj se ponavlja onoliko puta koliko ima kolona u vašem rasponu.

    Za izračunajte broj kolone , gradite odgovarajući niz brojeva koristeći MOD funkciju:

    MOD(ROW(A1)-1, COLUMNS($A$2:$C$5))+1

    Pošto postoje 3 kolone u našem rasponu (A2:C5), sekvenca mora biti 1,2,3,1,2,3,…

    Funkcija MOD vraća ostatak nakon dijeljenja.

    U E2, MOD(ROW(A1)-1, COLUMNS ($A$2:$C$5))+1)

    postaje

    MOD(1-1, 3)+1)

    i vraća 1.

    U E3, MOD(RED(A2)-1, KOLONE($A$2:$C$5))+1)

    postaje

    MOD(2-1, 3) +1)

    i vraća 2.

    Sa uspostavljenim brojevima redova i stupaca, INDEX nema problema s dohvaćanjem tražene vrijednosti.

    U E2, INDEX($A$2 :$C$5, 1, 1) vraća vrijednost iz 1. retka i 1. kolone referentnog raspona, tj. iz ćelije A2.

    U E3, INDEX($A$2:$C$5, 1 , 2) vraća vrijednost iz 1. retka i 2. kolone, tj. iz ćelije B2.

    I tako dalje.

    Druga formula koja skenira raspon po c olumn, radi na sličan način. Razlika je u tome što koristi MOD da dobije broj reda i QUOTIENT da dobije broj kolone.

    Funkcija TOCOL ne radi

    Ako funkcija TOCOL daje grešku, najvjerovatnije je da je jedan od ovih razloga:

    TOCOL nije podržan u vašem Excelu

    Kada dobijete #NAME? greška, ispravan pravopis imena funkcije je prva stvarprovjeriti. Ako je ime ispravno, ali greška i dalje postoji, funkcija nije dostupna u vašoj verziji programa Excel. U ovom slučaju razmislite o korištenju alternative TOCOL-a.

    Niz je prevelik

    Greška #NUM ukazuje da se niz ne može uklopiti u kolonu. Tipičan slučaj je kada se pozivate na cijele stupce ili redove.

    Nema dovoljno praznih ćelija

    Kada dođe do #SPILL greške, provjerite da li je stupac u koji je unesena formula ima dovoljno praznih ćelija da se popuni rezultatima. Ako su ćelije vizualno prazne, uvjerite se da u njima nema razmaka i drugih znakova koji se ne ispisuju. Za više informacija pogledajte Kako ispraviti grešku #SPILL u Excelu.

    Tako možete koristiti funkciju TOCOL u programu Excel 365 i alternativna rješenja u ranijim verzijama da transformirate 2-dimenzionalni niz u jednu kolonu. Zahvaljujem vam na čitanju i nadam se da se vidimo na našem blogu sljedeće sedmice!

    Radna sveska za vježbanje

    Excel funkcija TOCOL - primjeri formule (.xlsx datoteka)

    Michael Brown je posvećen tehnološki entuzijasta sa strašću za pojednostavljenje složenih procesa pomoću softverskih alata. Sa više od decenije iskustva u tehnološkoj industriji, usavršio je svoje vještine u Microsoft Excelu i Outlooku, kao i Google Sheets i Docs. Michaelov blog je posvećen dijeljenju svog znanja i stručnosti s drugima, pružajući jednostavne savjete i tutorijale za poboljšanje produktivnosti i efikasnosti. Bilo da ste iskusni profesionalac ili početnik, Michaelov blog nudi vrijedne uvide i praktične savjete za izvlačenje maksimuma iz ovih osnovnih softverskih alata.