Kā pārslēgt kolonnas un rindas programmā Excel

  • Dalīties Ar Šo
Michael Brown

Šajā pamācībā ir parādīti dažādi veidi, kā programmā Excel pārslēgt rindas uz kolonnām: formulas, VBA kods un īpašs rīks.

Datu transponēšana programmā Excel ir uzdevums, kas pazīstams daudziem lietotājiem. Nereti izveidojat sarežģītu tabulu, lai saprastu, ka ir ļoti lietderīgi to pagriezt, lai labāk analizētu vai attēlotu datus grafikos.

Šajā rakstā atradīsiet vairākus veidus, kā konvertēt rindas uz kolonnām (vai kolonnas uz rindām), neatkarīgi no tā, kā jūs to saucat, tas ir viens un tas pats : ) Šie risinājumi darbojas visās Excel 2010 un Excel 365 versijās, aptver daudzus iespējamos scenārijus un izskaidro tipiskākās kļūdas.

    Rindiņu konvertēšana uz kolonnām programmā Excel, izmantojot īpašo funkciju Paste Special

    Pieņemsim, ka jums ir datu kopa, kas ir līdzīga tai, kas redzama zemāk redzamās grafikas augšējā daļā. Valstu nosaukumi ir sakārtoti kolonnās, bet valstu saraksts ir pārāk garš, tāpēc labāk nomainīsim kolonnas pret rindām, lai tabula ietilptu ekrānā:

    Lai pārslēgtu rindas uz kolonnām, veiciet šādas darbības:

    1. Lai ātri atlasītu visu tabulu, t. i., visas izklājlapas šūnas ar datiem, nospiediet Ctrl + Home un pēc tam Ctrl + Shift + End .
    2. Kopējiet atlasītās šūnas, noklikšķinot uz atlases ar peles labo pogu un izvēloties Kopēt no konteksta izvēlnes vai nospiežot Ctrl + C .
    3. Atlasiet galamērķa diapazona pirmo šūnu.

      Pārliecinieties, ka esat izvēlējies šūnu, kas atrodas ārpus diapazona, kurā ir sākotnējie dati, lai kopēšanas un ielīmēšanas apgabali nepārklātos. Piemēram, ja pašlaik ir 4 kolonnas un 10 rindas, pārveidotajā tabulā būs 10 kolonnas un 4 rindas.

    4. Ar peles labo pogu noklikšķiniet uz mērķa šūnas un izvēlieties Īpašais ielīmēšanas veids konteksta izvēlnē, pēc tam atlasiet Transponēt .

    Lai uzzinātu vairāk, skatiet sadaļu Kā lietot Paste Special programmā Excel.

    Piezīme. Ja jūsu avota datos ir formulas, pārliecinieties, ka pareizi izmantojat relatīvās un absolūtās atsauces atkarībā no tā, vai tās ir jāpielāgo vai jāpaliek bloķētas noteiktās šūnās.

    Kā tikko redzējāt, funkcija Paste Special ļauj veikt rindas pārveidošanu starp kolonnām (vai kolonnas pārveidošanu starp rindām) burtiski dažu sekunžu laikā. Šī metode arī kopē jūsu sākotnējo datu formatējumu, kas ir vēl viens arguments par labu šai metodei.

    Tomēr šī pieeja ir divi trūkumi kas neļauj to saukt par perfektu risinājumu datu transponēšanai programmā Excel:

    • Tas nav labi piemērots pilnībā funkcionālu Excel tabulu rotēšanai. Ja kopējat visu tabulu un pēc tam atverat programmu. Īpašais ielīmēšanas veids dialoglodziņā Transponēt Šādā gadījumā jums ir vai nu jākopē tabula bez kolonnu virsrakstiem, vai arī tā vispirms jāpārveido uz diapazonu.
    • Īpašais ielīmēšanas veids > Transponēt nesaista jauno tabulu ar sākotnējiem datiem, tāpēc tā ir piemērota tikai vienreizējai konvertēšanai. Kad vien mainās avota dati, process ir jāatkārto un tabula jāgriež no jauna. Neviens taču nevēlas tērēt laiku, lai atkal un atkal pārslēgtu vienas un tās pašas rindas un kolonnas, vai ne?

    Kā transponēt tabulu un sasaistīt to ar sākotnējiem datiem

    Apskatīsim, kā pārslēgt rindas uz kolonnām, izmantojot pazīstamo Īpašais ielīmēšanas veids Šī pieeja vislabāk ir tāda, ka, mainot datus avota tabulā, mainītā tabula atspoguļos šīs izmaiņas un attiecīgi atjaunināsies.

    1. Kopējiet rindas, kuras vēlaties pārveidot par kolonnām (vai kolonnas, kuras vēlaties pārveidot par rindām).
    2. Atlasiet tukšu šūnas tajā pašā vai citā darblapā.
    3. Atveriet Īpašais ielīmēšanas veids dialoglodziņu, kā paskaidrots iepriekšējā piemērā, un noklikšķiniet uz Ielīmēt saiti apakšējā kreisajā stūrī:

    Rezultāts būs līdzīgs šim:

  • Atlasiet jauno tabulu un atveriet Excel dialoglodziņu Atrast un aizstāt (vai nospiediet taustiņus Ctrl + H, lai nokļūtu Aizstāt cilne uzreiz).
  • Aizstājiet visas rakstzīmes "=" ar "xxx" vai jebkuru citu(-ām) rakstzīmi(-ēm), kas nekur nepastāv jūsu reālajos datos.
  • Tas padarīs jūsu galdu nedaudz biedējošu, kā redzams zemāk redzamajā ekrāna attēlā, taču nevajag panikot, tikai vēl 2 soļi, un jūs sasniegsiet vēlamo rezultātu.

  • Kopējiet tabulu ar "xxx" vērtībām un pēc tam izmantojiet Īpašais ielīmēt> Transponēt lai apvērstu kolonnas uz rindām
  • Visbeidzot, atveriet Atrast un aizstāt dialoglodziņu vēlreiz, lai mainītu izmaiņas, t. i., aizstāt visus "xxx" ar "=", lai atjaunotu saites uz sākotnējām šūnām.
  • Vienīgais šīs pieejas trūkums ir tas, ka sākotnējais formatējums tiek pazaudēts, un tas jāatjauno manuāli (turpmāk šajā pamācībā es parādīšu, kā to izdarīt ātri).

    Kā transponēt programmā Excel, izmantojot formulas

    Ātrāks veids, kā dinamiski pārslēgt kolonnas uz rindām programmā Excel, ir, izmantojot formulu TRANSPOSE vai INDEX/ADDRESS. Tāpat kā iepriekšējā piemērā, arī šīs formulas saglabā saikni ar sākotnējiem datiem, bet darbojas nedaudz atšķirīgi.

    Mainīt rindas uz kolonnām programmā Excel, izmantojot funkciju TRANSPOSE

    Kā norāda tās nosaukums, funkcija TRANSPOSE ir īpaši izstrādāta datu pārnešanai programmā Excel:

    =TRANSPOSE(masīvs)

    Šajā piemērā mēs konvertēsim citu tabulu, kurā uzskaitīti ASV štati pēc iedzīvotāju skaita:

    1. Saskaitiet rindiņu un kolonnu skaitu sākotnējā tabulā un atlasiet tikpat daudz tukšu šūnu, bet otrā virzienā.

      Piemēram, mūsu parauga tabulā ir 7 kolonnas un 6 rindas, ieskaitot virsrakstus. Tā kā funkcija TRANSPOSE mainīs kolonnas uz rindām, mēs izvēlamies 6 kolonnu un 7 rindu diapazonu.

    2. Atlasot tukšās šūnas, ievadiet šo formulu:

      =TRANSPOZĪCIJA(A1:G6)

    3. Tā kā mūsu formula jāpiemēro vairākām šūnām, nospiediet Ctrl + Shift + Enter, lai to padarītu par masīva formulu.

    Voilà, kolonnas tiek pārveidotas par rindām, tieši kā mēs vēlējāmies:

    TRANSPOSE funkcijas priekšrocības:

    Galvenais ieguvums, izmantojot funkciju TRANSPOSE, ir tas, ka pagrieztā tabula saglabā savienojumu ar avota tabulu un, mainot avota datus, attiecīgi mainās arī transponētā tabula.

    TRANSPOSE funkcijas trūkumi:

    • Konvertētajā tabulā netiek saglabāts sākotnējais tabulas formatējums, kā redzams iepriekš redzamajā ekrānšāviņas attēlā.
    • Ja sākotnējā tabulā ir tukšas šūnas, transponētajās šūnās būs 0. Lai to novērstu, izmantojiet TRANSPOSE kopā ar funkciju IF, kā paskaidrots šajā piemērā: Kā transponēt bez nulles.
    • Pagrieztajā tabulā nav iespējams rediģēt nevienu šūnu, jo tā ir ļoti atkarīga no avota datiem. Ja mēģināsiet mainīt kādas šūnas vērtību, tiks parādīta kļūda "Jūs nevarat mainīt masīva daļu".

    Nobeigumā var secināt, ka, lai cik laba un viegli lietojama būtu TRANSPOSE funkcija, tai noteikti trūkst elastības, tāpēc daudzās situācijās tā var nebūt labākais risinājums.

    Lai iegūtu vairāk informācijas, skatiet Excel TRANSPOSE funkciju ar piemēriem.

    Rindas konvertēšana kolonnā ar funkcijām INDIRECT un ADDRESS

    Šajā piemērā tiks izmantota divu funkciju kombinācija, kas ir nedaudz sarežģīti. Tātad, pagriezīsim mazāku tabulu, lai varētu labāk koncentrēties uz formulu.

    Pieņemsim, ka jums ir dati 4 slejās (A - D) un 5 rindās (1 - 5):

    Lai kolonnas pārslēgtu uz rindām, veiciet šādas darbības:

    1. Ievadiet tālāk redzamo formulu galamērķa diapazona kreisākajā šūnā, piemēram, A7, un nospiediet taustiņu Enter:

      =INDIRECT(ADRESE(SLEJA(A1),RINDA(A1)))

    2. Kopējiet formulu pa labi un uz leju uz tik daudzām rindām un kolonnām, cik nepieciešams, velkot nelielu melnu krustiņu atlasīto šūnu apakšējā labajā stūrī:

    Tas ir viss! Jaunizveidotajā tabulā visas kolonnas ir nomainītas uz rindām.

    Ja dati sākas kādā citā rindā, nevis 1, un kolonnā, kas nav A, būs jāizmanto nedaudz sarežģītāka formula:

    =INDIRECT(ADDRESS(A1 SLEJA(A1) - SLEJA($A$1) + RINDA($A$1), A1 SLEJA(A1) - RINDA($A$1) + SLEJA($A$1)))))

    kur A1 ir avota tabulas augšējā kreisā kreisā šūna. Lūdzu, ņemiet vērā arī absolūto un relatīvo šūnu atsauču lietošanu.

    Tomēr transponētās šūnas salīdzinājumā ar sākotnējiem datiem izskatās ļoti vienkāršas un blāvi:

    Taču nevajag vilties, jo šo problēmu var viegli novērst. Lai atjaunotu sākotnējo formatējumu, veiciet šādu darbību:

    • Kopējiet oriģinālo tabulu.
    • Atlasiet iegūto tabulu.
    • Ar peles labo pogu noklikšķiniet uz iegūtās tabulas un izvēlieties Ielīmēt opcijas > Formatēšana .

    Priekšrocības : Šī formula nodrošina elastīgāku veidu, kā pārvērst rindas par kolonnām programmā Excel. Tā ļauj veikt jebkādas izmaiņas transponētajā tabulā, jo tiek izmantota parasta formula, nevis masīva formula.

    Trūkumi : Es redzu tikai vienu - ir zaudēts kārtas datu formatējums. Lai gan to var ātri atjaunot, kā parādīts iepriekš.

    Kā darbojas šī formula

    Tagad, kad zināt, kā izmantot kombināciju INDIRECT / ADDRESS, varat gūt priekšstatu par to, ko šī formula patiesībā dara.

    Kā norāda tās nosaukums, funkcija INDIRECT tiek izmantota, lai netieši atsauktos uz šūnu. Taču patiesais INDIRECT spēks ir tas, ka tā var pārvērst jebkuru virkni par atsauci, tostarp virkni, ko izveidojat, izmantojot citas funkcijas un citu šūnu vērtības. Un tieši to mēs arī darīsim. Ja jūs sekosiet līdzi šim, jūs viegli sapratīsiet visu pārējo : )

    Kā atceraties, formulā mēs izmantojām vēl 3 funkcijas - ADDRESS, COLUMN un ROW.

    Funkcija ADDRESS iegūst šūnas adresi pēc attiecīgi norādītā rindas un kolonnas numura. Lūdzu, atcerieties secību: pirmā - rinda, otrā - kolonna.

    Mūsu formulā mēs norādām koordinātes apgrieztā secībā, un tieši tas faktiski veic šo triku! Citiem vārdiem sakot, šī formulas daļa ADDRESS(COLUMN(A1),ROW(A1)) nomaina rindas pret kolonnām, t. i., ņem kolonnas numuru un maina to uz rindas numuru, tad ņem rindas numuru un maina to uz kolonnas numuru.

    Visbeidzot, funkcija INDIRECT izvada pagrieztus datus. Nekas briesmīgs, vai ne?

    Datu transponēšana programmā Excel, izmantojot VBA makro

    Lai automatizētu rindu konvertēšanu uz kolonnām programmā Excel, varat izmantot šādu makro:

    Sub TransposeColumnsRows() Dim SourceRange As Range Dim DestRange As Range Set SourceRange = Application.InputBox(Prompt:= "Please select the range to transpose" , Title:= "Transpose Rows to Columns" , Type :=8) Set DestRange = Application.InputBox(Prompt:= "Select the upper left cell of the destination range" , Title:= "Transpose Rows to Columns" , Type :=8) SourceRange.Copy DestRange. SelectSelection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= False , Transpose:= True Application.CutCopyMode = False End Sub

    Lai pievienotu makroattēlu darblapai, ievērojiet norādījumus, kas aprakstīti sadaļā Kā ievietot un palaist VBA kodu programmā Excel.

    Piezīme. Transponēšanai ar VBA ir ierobežojums 65536 elementi. Ja jūsu masīvs pārsniedz šo ierobežojumu, papildu dati tiks izmesti.

    Kā izmantot makro, lai konvertētu rindu uz kolonnu

    Kad makroieraksts ir ievietots darbgrāmatā, veiciet tālāk aprakstītās darbības, lai pagrieztu tabulu:

    1. Atveriet mērķa darblapu, nospiediet Alt + F8 , atlasiet TransposeColumnsRows un noklikšķiniet uz Palaist .

  • Atlasiet diapazonu, kurā vēlaties pārslēgt rindas un kolonnas, un noklikšķiniet uz LABI :
  • Atlasiet galamērķa diapazona augšējo kreiso šūnu un noklikšķiniet uz LABI :
  • Izbaudiet rezultātu :)

    Pārslēdziet kolonnas un rindas, izmantojot rīku Transponēt

    Ja jums regulāri ir jāveic rindu transformācijas uz kolonnām, iespējams, ka patiesībā meklējat ātrāku un vienkāršāku veidu. Par laimi, man ir šāds veids savā programmā Excel, un tāds ir arī citiem mūsu Ultimate Suite lietotājiem :)

    Ļaujiet man parādīt, kā ar dažiem klikšķiem burtiski pārslēgt rindas un kolonnas programmā Excel:

    1. Izvēlieties jebkuru atsevišķu šūnas šūnu tabulā, atveriet sadaļu Ablebits cilne> Pārveidot grupu un noklikšķiniet uz Transponēt pogu.

  • Vairumā gadījumu noklusējuma iestatījumi darbojas pareizi, tāpēc vienkārši noklikšķiniet uz Transponēt neko nemainot.
  • Ja vēlaties Tikai ielīmēt vērtības vai Izveidot saites uz avota datiem lai piespiestu rotēto tabulu automātiski atjaunināt pēc katrām izmaiņām, ko veicat sākotnējā tabulā, atlasiet attiecīgo opciju.

    Gatavs! Tabula ir pārnesta, formatējums ir saglabāts, turpmākas manipulācijas nav nepieciešamas:

    Ja vēlaties izmēģināt šo un vēl vairāk nekā 70 citus profesionālus rīkus Excel, aicinu jūs lejupielādēt mūsu Ultimate Suite izmēģinājuma versiju. Paldies, ka izlasījāt, un ceru, ka nākamnedēļ tiksimies mūsu emuārā!

    Maikls Brauns ir īpašs tehnoloģiju entuziasts, kura aizraušanās ir sarežģītu procesu vienkāršošana, izmantojot programmatūras rīkus. Ar vairāk nekā desmit gadu pieredzi tehnoloģiju nozarē viņš ir pilnveidojis savas prasmes programmās Microsoft Excel un Outlook, kā arī Google izklājlapās un dokumentos. Maikla emuārs ir veltīts tam, lai dalītos savās zināšanās un pieredzē ar citiem, sniedzot viegli izpildāmus padomus un pamācības produktivitātes un efektivitātes uzlabošanai. Neatkarīgi no tā, vai esat pieredzējis profesionālis vai iesācējs, Maikla emuārs piedāvā vērtīgas atziņas un praktiskus padomus, kā maksimāli izmantot šos būtiskos programmatūras rīkus.