Kako promijeniti stupce i redove u Excelu

  • Podijeli Ovo
Michael Brown

Vodič pokazuje različite načine za prebacivanje redaka u stupce u Excelu: formule, VBA kod i poseban alat.

Transponiranje podataka u Excelu je zadatak poznat mnogim korisnicima. Često pravite složenu tabelu samo da biste shvatili da je savršeno logično da je rotirate radi bolje analize ili prezentacije podataka u grafikonima.

U ovom članku ćete pronaći nekoliko načina za pretvaranje redova u kolone (ili kolone u redove), kako god to nazvali, ista je stvar :) Ova rješenja rade u svim verzijama Excela 2010 do Excel 365, pokrivaju mnoge moguće scenarije i objašnjavaju najčešće greške.

    Pretvorite redove u stupce u Excelu koristeći specijalno lijepljenje

    Pretpostavimo da imate skup podataka sličan onome što vidite u gornjem dijelu donje grafike. Nazivi zemalja su organizirani u stupce, ali lista zemalja je predugačka, pa je bolje da promijenimo stupce u redove kako bi tabela stala na ekran:

    Da biste redove prebacili na stupce, izvršite ove korake:

    1. Odaberite originalne podatke. Da biste brzo odabrali cijelu tabelu, tj. sve ćelije s podacima u proračunskoj tabeli, pritisnite Ctrl + Home, a zatim Ctrl + Shift + End .
    2. Kopirajte odabrane ćelije bilo desnim klikom na odabir i odabirom Kopiraj iz kontekstnog izbornika ili pritiskom na Ctrl + C .
    3. Izaberite prvu ćeliju odredišnog raspona.

      Obavezno odaberite ćeliju kojaisprobajte ovaj i 70+ drugih profesionalnih alata za Excel, pozivam vas da preuzmete probnu verziju našeg Ultimate Suite-a. Hvala vam na čitanju i nadam se da se vidimo na našem blogu sljedeće sedmice!

      pada izvan raspona koji sadrži vaše originalne podatke, tako da se područja kopiranja i lijepljenja ne preklapaju. Na primjer, ako trenutno imate 4 stupca i 10 redaka, konvertirana tablica će imati 10 stupaca i 4 reda.
    4. Kliknite desnom tipkom miša na odredišnu ćeliju i odaberite Specijalno zalijepi iz kontekstni meni, a zatim odaberite Transpose .

    Za više informacija pogledajte Kako koristiti Specijalno lijepljenje u Excelu.

    Napomena. Ako vaši izvorni podaci sadrže formule, pazite da pravilno koristite relativne i apsolutne reference ovisno o tome treba li ih prilagoditi ili ostati zaključane za određene ćelije.

    Kao što ste upravo vidjeli, funkcija Paste Special vam omogućava da izvedete transformacije reda u kolonu (ili kolone u red) doslovno za nekoliko sekundi. Ova metoda također kopira formatiranje vaših originalnih podataka, što dodaje još jedan argument u njegovu korist.

    Međutim, ovaj pristup ima dva nedostatka koji ga sprečavaju da se nazove savršenim rješenjem za transponiranje podaci u Excelu:

    • Nije pogodan za rotiranje potpuno funkcionalnih Excel tabela. Ako kopirate cijelu tabelu, a zatim otvorite dijalog Specijalno lijepljenje , vidjet ćete da je opcija Transponiraj onemogućena. U ovom slučaju, trebate ili kopirati tablicu bez zaglavlja stupaca ili je prvo pretvoriti u raspon.
    • Specijalno lijepljenje > Transponiraj ne povezuje novi stosa originalnim podacima, tako da je pogodan samo za jednokratne konverzije. Kad god se izvorni podaci promijene, morat ćete ponoviti proces i iznova rotirati tablicu. Niko ne bi želio gubiti vrijeme na mijenjanje istih redova i stupaca iznova i iznova, zar ne?

    Kako transponirati tabelu i povezati je s originalnim podacima

    Hajde pogledajte kako možete prebaciti redove u stupce koristeći poznatu tehniku ​​ Specijalno lijepljenje , ali povežite rezultirajuću tablicu s originalnim skupom podataka. Najbolja stvar kod ovog pristupa je da kad god promijenite podatke u izvornoj tablici, okrenuta tablica će odražavati promjene i ažurirati se u skladu s tim.

    1. Kopirajte redove koje želite pretvoriti u stupce (ili stupce koje treba promijeniti u redove).
    2. Odaberite praznu ćeliju na istom ili drugom radnom listu.
    3. Otvorite dijalog Specijalno lijepljenje , kao što je objašnjeno u prethodnom primjeru i kliknite Zalijepi vezu u donji lijevi ugao:

    Imat ćete rezultat sličan ovome:

  • Odaberite novu tablicu i otvorite Excelov dijalog Pronađi i zamijeni (ili pritisnite Ctrl + H da odmah dođete do kartice Zamijeni ).
  • Zamijeni sve " =" znakovi sa "xxx" ili bilo koji drugi karakter(i) koji ne postoji nigdje u vašim stvarnim podacima.
  • Ovo će vašu tabelu pretvoriti u nešto pomalo zastrašujuće, kao što vidite na snimku ekrana ispod, ali bez panike,samo još 2 koraka i postići ćete željeni rezultat.

  • Kopirajte tabelu sa vrijednostima "xxx", a zatim koristite Specijalno lijepljenje > Transponiraj za okretanje stupaca u redove
  • Konačno, još jednom otvorite dijalog Pronađi i zamijeni da poništite promjenu, tj. zamijenite sve "xxx" sa "=" da vratite linkovi na originalne ćelije.
  • Ovo je malo dugačko, ali elegantno rješenje, zar ne? Jedini nedostatak ovog pristupa je taj što se originalno formatiranje gubi u procesu i morat ćete ga ručno vratiti (pokazaću vam brz način da to učinite dalje u ovom vodiču).

    Kako za transponovanje u Excelu pomoću formula

    Brži način za dinamičko prebacivanje stupaca u redove u Excelu je korištenje formule TRANSPOSE ili INDEKS/ADRESA. Poput prethodnog primjera, ove formule također zadržavaju veze s originalnim podacima, ali rade malo drugačije.

    Promijenite redove u stupce u Excelu pomoću funkcije TRANSPOSE

    Kao što joj ime sugerira, funkcija TRANSPOSE je posebno dizajniran za transponiranje podataka u Excelu:

    =TRANSPOSE(niz)

    U ovom primjeru ćemo pretvoriti drugu tabelu koja navodi američke savezne države prema broju stanovnika:

    1. Izbrojite broj redova i stupaca u vašoj originalnoj tablici i odaberite isti broj praznih ćelija, ali u drugom smjeru.

      Na primjer, naša tabela uzorka ima 7 kolona i 6 redova, uključujućinaslovi. Budući da će funkcija TRANSPOSE promijeniti stupce u redove, odabiremo raspon od 6 stupaca i 7 redova.

    2. Sa odabranim praznim ćelijama, upišite ovu formulu:

      =TRANSPOSE(A1:G6)

    3. Budući da našu formulu treba primijeniti na više ćelija, pritisnite Ctrl + Shift + Enter da postane formula niza.

    Voilà, stupci su promijenjeno u redove, točno kako smo željeli:

    Prednosti funkcije TRANSPOSE:

    Glavna prednost korištenja funkcije TRANSPOSE je da rotirana tablica zadržava vezu s izvornom tablicom i kad god promijenite izvorne podatke, transponirana tablica će se u skladu s tim promijeniti.

    Slabosti funkcije TRANSPOSE:

    • Originalno formatiranje tabele nije sačuvano u konvertovanoj tabeli, kao što vidite na gornjoj slici ekrana.
    • Ako postoje prazne ćelije u originalnoj tabeli, transponovane ćelije će sadržati 0. Da biste to popravili, koristite TRANSPOSE u kombinaciji sa funkcijom IF kao što je objašnjeno u ovom primjeru: Kako transponirati bez nula.
    • Ne možete uređivati ​​nijednu ćeliju u rotiranoj tablici jer to u velikoj mjeri ovisi o izvornim podacima. Ako pokušate promijeniti neku vrijednost ćelije, završit ćete s greškom "Ne možete promijeniti dio niza".

    Završno, bez obzira što je dobra i laka za korištenje funkcija TRANSPOSE , svakako nedostaje fleksibilnosti i stoga možda nije najboljinačin na koji možete ići u mnogim situacijama.

    Za više informacija, pogledajte Excel funkciju TRANSPOSE s primjerima.

    Pretvorite red u stupac s INDIRECT i ADDRESS funkcijama

    U ovom primjeru, će koristiti kombinaciju dvije funkcije, što je malo nezgodno. Dakle, rotirajmo manju tabelu kako bismo se bolje fokusirali na formulu.

    Pretpostavimo da imate podatke u 4 kolone (A - D) i 5 reda (1 - 5):

    Da bi se stupci prebacili u redove, učinite sljedeće:

    1. Unesite formulu ispod u najlijevu ćeliju odredišnog raspona, recimo A7 i pritisnite tipku Enter :

      =INDIRECT(ADDRESS(COLUMN(A1),ROW(A1)))

    2. Kopirajte formulu udesno i nadolje u onoliko redaka i stupaca koliko je potrebno povlačenjem malog crnog križa u donjem desnom uglu odabranih ćelija:

    To je to! U vašoj novokreiranoj tabeli, svi stupci su prebačeni u redove.

    Ako vaši podaci počinju u nekom redu koji nije 1 i stupac koji nije A, morat ćete koristiti malo složeniju formulu:

    =INDIRECT(ADDRESS(COLUMN(A1) - COLUMN($A$1) + ROW($A$1), ROW(A1) - ROW($A$1) + COLUMN($A$1)))

    Gdje je A1 najlijeva gornja ćelija vaše izvorne tablice. Također, obratite pažnju na korištenje apsolutnih i relativnih referenci na ćelije.

    Međutim, transponirane ćelije izgledaju vrlo jednostavno i dosadno, u poređenju s originalnim podacima:

    Ali nemojte se razočarati, ovaj problem se lako može riješiti. Da biste vratili originalno oblikovanje, evo što trebate učiniti:

    • Kopirate originaltabelu.
    • Odaberite rezultujuću tabelu.
    • Kliknite desnim tasterom miša na rezultujuću tabelu i odaberite Opcije zalepljenja > Formatiranje .

    Prednosti : Ova formula pruža fleksibilniji način pretvaranja redova u stupce u Excelu. Omogućava bilo kakve promjene u transponiranoj tabeli jer koristite regularnu formulu, a ne formulu niza.

    Nedostaci : Vidim samo jedan - formatiranje rednih podataka je izgubljeno. Iako je možete brzo vratiti, kao što je prikazano gore.

    Kako ova formula funkcionira

    Sada kada znate kako koristiti kombinaciju INDIREKTNA/ADRESA, možda ćete htjeti dobiti uvid u ono formula zapravo radi.

    Kao što joj ime sugerira, INDIRECT funkcija se koristi za indirektno upućivanje na ćeliju. Ali prava moć INDIRECT-a je u tome što može pretvoriti bilo koji niz u referencu, uključujući niz koji gradite koristeći druge funkcije i vrijednosti drugih ćelija. A to je upravo ono što ćemo učiniti. Ako slijedite ovo, sve ostalo ćete razumjeti s lakoćom : )

    Kao što se sjećate, koristili smo još 3 funkcije u formuli - ADRESU, KOLONU i RED.

    Funkcija ADDRESS dobiva adresu ćelije prema brojevima reda i stupaca koje navedete. Zapamtite redoslijed: prvi - red, drugi - stupac.

    U našoj formuli dajemo koordinate obrnutim redoslijedom, a ovoje ono što zapravo čini trik! Drugim riječima, ovaj dio formule ADRESA(COLUMN(A1),ROW(A1)) zamjenjuje redove u stupce, tj. uzima broj kolone i mijenja ga u broj reda, zatim uzima broj reda i pretvara ga u kolonu broj.

    Konačno, INDIRECT funkcija daje rotirane podatke. Ništa strašno, zar ne?

    Transponirajte podatke u Excel koristeći VBA makro

    Da biste automatizirali konverziju redaka u stupce u Excelu, možete koristiti sljedeći makro:

    Sub TransposeColumnsRows () Dim SourceRange As Range Dim DestRange As Range Postavite SourceRange = Application.InputBox(Prompt:= "Molimo odaberite opseg za transponovanje" , Title:= "Transponirajte redove u kolone" , Type :=8) Postavite DestRange = Application.InputBox (Prompt:= "Izaberite gornju lijevu ćeliju odredišnog raspona" , Title:= "Transponirajte redove u kolone" , Type :=8) SourceRange.Copy DestRange. Odaberite Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= False , Transpose:= True Application.CutCopyMode = False End Sub

    Da dodate makro na svoj radni list, slijedite smjernice opisane u Kako umetnuti i pokrenite VBA kod u Excel-u.

    Napomena. Transponovanje sa VBA, ima ograničenje od 65536 elemenata. U slučaju da vaš niz premaši ovo ograničenje, dodatni podaci će biti tiho odbačeni.

    Kako koristiti makro za pretvaranje reda u kolonu

    Sa makroom umetnutim u radnu knjigu, izvršite sljedećekoraci za rotiranje tablice:

    1. Otvorite ciljni radni list, pritisnite Alt + F8 , odaberite makro TransposeColumnsRows i kliknite Run .

  • Odaberite raspon u kojem želite zamijeniti redove i stupce i kliknite OK :
  • Odaberite gornju lijevu ćeliju odredišnog raspona i kliknite OK :
  • Uživajte u rezultatu :)

    Prebacite stupce i redove pomoću alata Transpose

    Ako trebate redovno izvoditi transformacije reda u kolonu, možda zapravo tražite brži i jednostavniji način. Srećom, ja imam takav način u svom Excelu, kao i drugi korisnici našeg Ultimate Suite-a :)

    Dozvolite mi da vam pokažem kako zamijeniti redove i stupce u Excelu doslovno u nekoliko klikova:

    1. Odaberite bilo koju ćeliju u vašoj tablici, idite na karticu Ablebits > Transform grupu i kliknite na dugme Transpose .

  • Podrazumevane postavke rade dobro u većini slučajeva, tako da jednostavno kliknete na Transpose bez promjene bilo čega.
  • Ako želite Zalijepiti samo vrijednosti ili Kreirati veze do izvornih podataka da prisilite rotiranu tablicu da se automatski ažurira sa svakom promjenom koju napravite u originalnoj tablici, odaberite odgovarajuća opcija.

    Gotovo! Tablica je transponirana, formatiranje je sačuvano, nisu potrebne daljnje manipulacije:

    Ako ste znatiželjni

    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.