Paano lumipat ng mga column at row sa Excel

  • Ibahagi Ito
Michael Brown

Ang tutorial ay nagpapakita ng iba't ibang paraan upang lumipat ng mga hilera sa mga column sa Excel: mga formula, VBA code, at isang espesyal na tool.

Ang paglipat ng data sa Excel ay ang gawaing pamilyar sa maraming user. Kadalasan ay gumagawa ka ng isang kumplikadong talahanayan para lang mapagtanto na makatuwirang iikot ito para sa mas mahusay na pagsusuri o presentasyon ng data sa mga graph.

Sa artikulong ito, makakahanap ka ng ilang paraan upang i-convert ang mga row sa mga column (o columns to rows), alinman ang tawag mo dito, pareho lang ito :) Ang mga solusyong ito ay gumagana sa lahat ng bersyon ng Excel 2010 hanggang Excel 365, sumasaklaw sa maraming posibleng sitwasyon, at nagpapaliwanag ng karamihan sa mga karaniwang pagkakamali.

    I-convert ang mga row sa mga column sa Excel gamit ang Paste Special

    Ipagpalagay na mayroon kang dataset na katulad ng nakikita mo sa itaas na bahagi ng graphics sa ibaba. Ang mga pangalan ng bansa ay nakaayos sa mga column, ngunit ang listahan ng mga bansa ay masyadong mahaba, kaya mas mabuting baguhin namin ang mga column sa mga row para magkasya ang talahanayan sa loob ng screen:

    Upang lumipat ng mga hilera sa mga column, isagawa ang mga hakbang na ito:

    1. Piliin ang orihinal na data. Upang mabilis na piliin ang buong talahanayan, ibig sabihin, lahat ng mga cell na may data sa isang spreadsheet, pindutin ang Ctrl + Home at pagkatapos ay Ctrl + Shift + End .
    2. Kopyahin ang mga napiling cell alinman sa pamamagitan ng pag-right click sa pagpili at pagpili sa Kopyahin ang mula sa menu ng konteksto o sa pamamagitan ng pagpindot sa Ctrl + C .
    3. Piliin ang unang cell ng hanay ng patutunguhan.

      Tiyaking pumili ng cell na iyonsubukan ito at 70+ pang propesyonal na tool para sa Excel, iniimbitahan kitang mag-download ng trial na bersyon ng aming Ultimate Suite. Salamat sa pagbabasa at sana ay makita kita sa aming blog sa susunod na linggo!

      ay nasa labas ng saklaw na naglalaman ng iyong orihinal na data, upang ang mga lugar ng kopyahin at mga lugar ng pag-paste ay hindi mag-overlap. Halimbawa, kung kasalukuyan kang mayroong 4 na column at 10 row, ang na-convert na talahanayan ay magkakaroon ng 10 column at 4 na row.
    4. I-right click ang destination cell at piliin ang I-paste ang Espesyal mula sa menu ng konteksto, pagkatapos ay piliin ang Transpose .

    Para sa higit pang impormasyon, pakitingnan ang Paano gamitin ang Paste Special sa Excel.

    Tandaan. Kung ang iyong source data ay naglalaman ng mga formula, tiyaking maayos na gumamit ng mga kamag-anak at ganap na sanggunian depende sa kung dapat silang ayusin o manatiling naka-lock sa ilang mga cell.

    Tulad ng, ngayon mo lang nakita, hinahayaan ka ng I-paste na Espesyal na tampok na magsagawa ng mga pagbabago sa hanay sa hanay (o hanay sa hanay) nang literal sa loob ng ilang segundo. Kinokopya rin ng paraang ito ang pag-format ng iyong orihinal na data, na nagdaragdag ng isa pang argumento na pabor dito.

    Gayunpaman, ang diskarteng ito ay may dalawang disbentaha na pumipigil dito na tawaging perpektong solusyon para sa transposing data sa Excel:

    • Hindi ito angkop para sa pag-rotate ng mga fully-functional na Excel table. Kung kopyahin mo ang buong talahanayan at pagkatapos ay buksan ang Paste Special dialog, makikita mong hindi pinagana ang opsyon na Transpose . Sa kasong ito, kailangan mong kopyahin ang talahanayan nang walang mga header ng column o i-convert muna ito sa isang hanay.
    • Paste Special > Transpose ay hindi nagli-link ng bago mesagamit ang orihinal na data, kaya angkop lamang ito para sa isang beses na conversion. Sa tuwing nagbabago ang source data, kailangan mong ulitin ang proseso at iikot muli ang talahanayan. Walang sinuman ang magnanais na mag-aksaya ng kanilang oras sa paulit-ulit na paglipat ng parehong mga row at column, di ba?

    Tara tingnan kung paano mo maaaring ilipat ang mga row sa mga column gamit ang pamilyar na Paste Special technique, ngunit ikonekta ang resultang talahanayan sa orihinal na dataset. Ang pinakamagandang bagay tungkol sa diskarteng ito ay sa tuwing babaguhin mo ang data sa source table, ipapakita ng naka-flip na talahanayan ang mga pagbabago at ia-update nang naaayon.

    1. Kopyahin ang mga row na gusto mong i-convert sa mga column (o mga column. na gagawing mga row).
    2. Pumili ng walang laman na cell sa pareho o ibang worksheet.
    3. Buksan ang dialog na I-paste ang Espesyal , gaya ng ipinaliwanag sa nakaraang halimbawa at i-click I-paste ang Link sa kaliwang sulok sa ibaba:

    Magkakaroon ka ng resultang katulad nito:

  • Piliin ang bagong talahanayan at buksan ang dialog ng Find and Replace ng Excel (o pindutin ang Ctrl + H upang makapunta kaagad sa tab na Palitan ).
  • Palitan lahat " =" character na may "xxx" o anumang iba pang (mga) character na wala saanman sa iyong totoong data.
  • Ito ay gagawing isang bagay ang iyong talahanayan medyo nakakatakot, tulad ng nakikita mo sa screenshot sa ibaba, ngunit huwag mag-panic,2 pang hakbang na lang, at makakamit mo ang ninanais na resulta.

  • Kopyahin ang talahanayan na may mga "xxx" na halaga, at pagkatapos ay gamitin ang I-paste ang Espesyal > I-transpose ang para i-flip ang mga column sa mga row
  • Sa wakas, buksan ang Find and Replace dialog ng isa pang beses upang baligtarin ang pagbabago, ibig sabihin, palitan ang lahat ng "xxx" ng "=" para ibalik ang mga link sa orihinal na mga cell.
  • Medyo mahaba ngunit eleganteng solusyon ito, di ba? Ang tanging disbentaha ng diskarteng ito ay ang orihinal na pag-format ay nawala sa proseso at kakailanganin mong i-restore ito nang manu-mano (Ipapakita ko sa iyo ang isang mabilis na paraan upang gawin ito sa tutorial na ito).

    Paano upang i-transpose sa Excel gamit ang mga formula

    Ang isang mas mabilis na paraan upang dynamic na ilipat ang mga column sa mga row sa Excel ay sa pamamagitan ng paggamit ng TRANSPOSE o INDEX/ADDRESS na formula. Tulad ng nakaraang halimbawa, pinapanatili din ng mga formula na ito ang mga koneksyon sa orihinal na data ngunit gumagana nang medyo naiiba.

    Baguhin ang mga hilera sa mga column sa Excel gamit ang TRANSPOSE function

    Gaya ng ipinahihiwatig ng pangalan nito, ang TRANSPOSE function ay espesyal na idinisenyo para sa transposing data sa Excel:

    =TRANSPOSE(array)

    Sa halimbawang ito, magko-convert kami ng isa pang talahanayan na naglilista ng mga estado ng U.S. ayon sa populasyon:

    1. Bilangin ang bilang ng mga row at column sa iyong orihinal na talahanayan at piliin ang parehong bilang ng blangkong cell, ngunit sa kabilang direksyon.

      Halimbawa, ang aming sample na talahanayan ay may 7 column at 6 row, kasama angmga pamagat. Dahil babaguhin ng TRANSPOSE function ang mga column sa mga row, pipili kami ng hanay ng 6 na column at 7 row.

    2. Sa mga walang laman na cell na napili, i-type ang formula na ito:

      =TRANSPOSE(A1:G6)

    3. Dahil kailangang ilapat ang aming formula sa maraming cell, pindutin ang Ctrl + Shift + Enter upang gawin itong array formula.

    Voilà, ang mga column ay binago sa mga hilera, eksakto tulad ng gusto namin:

    Mga bentahe ng TRANSPOSE function:

    Ang pangunahing benepisyo ng paggamit ng TRANSPOSE function ay na ang rotated table ay nagpapanatili ng koneksyon sa source table at sa tuwing babaguhin mo ang source data, ang transposed table ay magbabago nang naaayon.

    Mga kahinaan ng TRANSPOSE function:

    • Ang orihinal na pag-format ng talahanayan ay hindi nai-save sa na-convert na talahanayan, tulad ng nakikita mo sa screenshot sa itaas.
    • Kung mayroong anumang mga cell na walang laman sa orihinal na talahanayan, ang mga transposed na cell ay maglalaman ng 0 sa halip. Upang ayusin ito, gamitin ang TRANSPOSE kasabay ng IF function gaya ng ipinaliwanag sa halimbawang ito: Paano mag-transpose nang walang mga zero.
    • Hindi mo maaaring i-edit ang anumang mga cell sa rotated table dahil ito ay lubos na nakadepende sa source data. Kung susubukan mong baguhin ang ilang cell value, magkakaroon ka ng error na "Hindi mo mababago ang bahagi ng isang array."

    Wrapping up, kahit anong mabuti at madaling gamitin ang TRANSPOSE function ay , tiyak na kulang ito sa flexibility at samakatuwid ay maaaring hindi ito ang pinakamahusayparaan upang pumunta sa maraming sitwasyon.

    Para sa higit pang impormasyon, pakitingnan ang Excel TRANSPOSE function na may mga halimbawa.

    I-convert ang row sa column gamit ang INDIRECT at ADDRESS function

    Sa halimbawang ito, ay gagamit ng kumbinasyon ng dalawang function, na medyo nakakalito. Kaya, paikutin natin ang isang mas maliit na talahanayan para mas makapag-focus sa formula.

    Kumbaga, mayroon kang data sa 4 na column (A - D) at 5 row (1 - 5):

    Upang mailipat ang mga column sa mga row, gawin ang sumusunod:

    1. Ilagay ang formula sa ibaba sa kaliwang pinaka cell ng hanay ng patutunguhan, sabihin ang A7, at pindutin ang Enter key :

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

    2. Kopyahin ang formula pakanan at pababa sa pinakamaraming row at column kung kinakailangan sa pamamagitan ng pag-drag ng maliit na itim na krus sa kanang sulok sa ibaba ng mga napiling cell:

    Ayan na! Sa iyong bagong likhang talahanayan, lahat ng column ay inililipat sa mga row.

    Kung magsisimula ang iyong data sa ilang row maliban sa 1 at column maliban sa A, kakailanganin mong gumamit ng medyo mas kumplikadong formula:

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

    Kung saan ang A1 ang pinaka-itaas na kaliwang cell ng iyong source table. Gayundin, mangyaring isipin ang paggamit ng ganap at kaugnay na mga sanggunian ng cell.

    Gayunpaman, ang mga na-transpose na mga cell ay mukhang napaka-simple at mapurol, kumpara sa orihinal na data:

    Ngunit huwag mabigo, ang problemang ito ay madaling maayos. Upang ibalik ang orihinal na pag-format, narito ang iyong gagawin:

    • Kopyahin ang orihinaltable.
    • Piliin ang resultang talahanayan.
    • I-right click ang resultang talahanayan at piliin ang Paste Options > Formatting .

    Mga Bentahe : Ang formula na ito ay nagbibigay ng mas flexible na paraan upang gawing mga column sa Excel ang mga row. Pinapayagan nitong gumawa ng anumang mga pagbabago sa transposed table dahil gumagamit ka ng regular na formula, hindi array formula.

    Mga Pagkukulang : Isa lang ang nakikita ko - nawala ang pag-format ng ordinal na data. Gayunpaman, mabilis mo itong maibabalik, tulad ng ipinapakita sa itaas.

    Paano gumagana ang formula na ito

    Ngayong alam mo na kung paano gamitin ang kumbinasyong INDIRECT / ADDRESS, maaaring gusto mong makuha ang insight kung ano ang ang formula ay aktwal na ginagawa.

    Tulad ng iminumungkahi ng pangalan nito, ang INDIRECT function, ay ginagamit upang hindi direktang sumangguni sa isang cell. Ngunit ang tunay na kapangyarihan ng INDIRECT ay na maaari nitong gawing reference ang anumang string, kabilang ang isang string na binuo mo gamit ang iba pang mga function at ang mga halaga ng iba pang mga cell. At ito mismo ang ating gagawin. Kung sinusundan mo ito, mauunawaan mo ang lahat ng iba pa nang madali : )

    Tulad ng naaalala mo, gumamit kami ng 3 pang function sa formula - ADDRESS, COLUMN at ROW.

    Nakukuha ng ADDRESS function ang cell address sa pamamagitan ng mga numero ng row at column na iyong tinukoy, ayon sa pagkakabanggit. Pakitandaan ang pagkakasunud-sunod: una - row, pangalawa - column.

    Sa aming formula, ibinibigay namin ang mga coordinate sa reverse order, at itoay kung ano ang talagang gumagawa ng lansihin! Sa madaling salita, ang bahaging ito ng formula na ADDRESS(COLUMN(A1),ROW(A1)) ay nagpapalit ng mga row sa column, ibig sabihin, kumukuha ng column number at binabago ito sa row number, pagkatapos ay kumuha ng row number at gagawin itong column numero.

    Sa wakas, ang INDIRECT na function ay naglalabas ng rotated data. Wala namang nakakatakot, di ba?

    Ilipat ang data sa Excel gamit ang VBA macro

    Upang i-automate ang conversion ng mga row sa mga column sa Excel, maaari mong gamitin ang sumusunod na macro:

    Sub TransposeColumnsRows () Dim SourceRange Bilang Saklaw Dim DestRange Bilang Hanay Itakda SourceRange = Application.InputBox(Prompt:= "Pakipili ang hanay upang i-transpose" , Title:= "Transpose Rows to Column" , Type :=8) Itakda ang DestRange = Application.InputBox (Prompt:= "Piliin ang kaliwang itaas na cell ng hanay ng patutunguhan" , Pamagat:= "Ilipat ang Mga Hanay sa Mga Column" , Uri :=8) SourceRange.Copy DestRange. Piliin ang Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= False , Transpose:= True Application.CutCopyMode = False End Sub

    Upang magdagdag ng macro sa iyong worksheet, mangyaring sundin ang mga alituntuning inilarawan sa Paano magpasok at patakbuhin ang VBA code sa Excel.

    Tandaan. Ang transposing gamit ang VBA, ay may limitasyon na 65536 na elemento. Kung sakaling lumampas ang iyong array sa limitasyong ito, tahimik na itatapon ang dagdag na data.

    Paano gamitin ang macro para i-convert ang row sa column

    Sa ipinasok na macro sa iyong workbook, gawin ang nasa ibabamga hakbang para i-rotate ang iyong talahanayan:

    1. Buksan ang target na worksheet, pindutin ang Alt + F8 , piliin ang macro na TransposeColumnsRows , at i-click ang Run .

  • Piliin ang hanay kung saan mo gustong lumipat ng mga row at column at i-click ang OK :
  • Piliin ang kaliwang itaas na cell ng hanay ng patutunguhan at i-click ang OK :
  • I-enjoy ang resulta :)

    Lumipat ng mga column at row gamit ang Transpose tool

    Kung kailangan mong regular na magsagawa ng row to column transformations, maaaring naghahanap ka talaga ng mas mabilis at mas simpleng paraan. Sa kabutihang palad, mayroon akong ganoong paraan sa aking Excel, at gayundin ang iba pang mga user ng aming Ultimate Suite :)

    Hayaan akong ipakita sa iyo kung paano lumipat ng mga row at column sa Excel nang literal sa loob ng ilang pag-click:

    1. Pumili ng anumang cell sa loob ng iyong talahanayan, pumunta sa tab na Ablebits > Transform , at i-click ang button na Transpose .

  • Ang mga default na setting ay gumagana nang maayos sa karamihan ng mga kaso, kaya i-click mo lang ang Transpose nang walang binabago.
  • Kung gusto mong Mag-paste lang ng mga value o Gumawa ng mga link sa source data upang pilitin ang rotated table na awtomatikong mag-update sa bawat pagbabagong gagawin mo sa orihinal na table, piliin ang kaukulang opsyon.

    Tapos na! Ang talahanayan ay inilipat, ang pag-format ay pinapanatili, walang karagdagang pagmamanipula ang kailangan:

    Kung gusto mong

    Si Michael Brown ay isang dedikadong mahilig sa teknolohiya na may hilig sa pagpapasimple ng mga kumplikadong proseso gamit ang mga tool sa software. Sa higit sa isang dekada ng karanasan sa industriya ng tech, hinasa niya ang kanyang mga kasanayan sa Microsoft Excel at Outlook, pati na rin ang Google Sheets at Docs. Ang blog ni Michael ay nakatuon sa pagbabahagi ng kanyang kaalaman at kadalubhasaan sa iba, na nagbibigay ng madaling sundan na mga tip at mga tutorial para sa pagpapabuti ng pagiging produktibo at kahusayan. Isa ka mang batikang propesyonal o baguhan, nag-aalok ang blog ni Michael ng mahahalagang insight at praktikal na payo para masulit ang mahahalagang software tool na ito.