Efnisyfirlit
Fljótlegasta leiðin til að umbreyta dálki eða röð af gildum í tvívítt fylki er að nota WRAPCOLS eða WRAPROWS aðgerðina.
Frá fyrstu dögum Excel hefur það verið mjög góður í að reikna og greina tölur. En að vinna með fylki hefur jafnan verið áskorun. Kynning á kraftmiklum fylkjum gerði notkun fylkisformúla mun auðveldari. Og nú er Microsoft að gefa út sett af nýjum kraftmiklum fylkisaðgerðum til að vinna með og endurmóta fylki. Þessi kennsla mun kenna þér hvernig á að nota tvær slíkar aðgerðir, WRAPCOLS og WRAPROWS, til að umbreyta dálki eða röð í 2D fylki á skömmum tíma.
Excel WRAPCOLS aðgerð
WRAPCOLS aðgerðin í Excel umbreytir röð eða dálki af gildum í tvívítt fylki byggt á tilgreindum fjölda gilda í hverri röð.
Setningafræðin hefur eftirfarandi rök:
WRAPCOLS(vector, wrap_count, [pad_with])Hvar:
- vector (áskilið) - einvídd frumfylki eða svið.
- wrap_count (áskilið) - hámarksfjöldi gilda í hverjum dálki.
- pad_with (valfrjálst) - gildið sem á að fylla með síðasta dálknum ef ekki eru nægir hlutir til að fylla hann. Ef þeim er sleppt verða gildin sem vantar fyllt með #N/A (sjálfgefið).
Til dæmis, til að breyta sviðinu B5:B24 í tvívítt fylki með 5 gildum í hverjum dálki, formúlan er:
=WRAPROWS(B5:B24, 5)
Þú slærð inn vektor rökin eru ekki einvídd fylki.
#NUM! villa
#NUM villa kemur upp ef wrap_count gildið er 0 eða neikvæð tala.
#SPILL! villa
Oftast gefur #SPILL villa til kynna að það séu ekki nógu margir auðir reiti til að hella niðurstöðunum inn í. Hreinsaðu nærliggjandi frumur og það verður horfið. Ef villan er viðvarandi skaltu athuga hvað #SPILL þýðir í Excel og hvernig á að laga það.
Svona á að nota WRAPCOLS og WRAPROWS aðgerðirnar til að breyta einvíddarsviði í tvívítt fylki í Excel. Ég þakka þér fyrir lesturinn og vonast til að sjá þig á blogginu okkar í næstu viku!
Æfingabók til niðurhals
WRAPCOLS og WRAPROWS aðgerðir - dæmi (.xlsx skrá)
formúlu í hvaða stakri hólf sem er og hún hellist sjálfkrafa niður í eins margar hólf og þarf. Í WRAPCOLS úttakinu er gildunum raðað lóðrétt, frá toppi til botns, byggt á wrap_countgildinu. Eftir að talningu hefur verið náð er byrjað á nýjum dálki.
Excel WRAPROWS aðgerð
WRAPROWS aðgerðin í Excel breytir röð eða dálki af gildum í tvívítt fylki byggt á fjölda gilda í hverri röð sem þú tilgreinir.
Setningafræðin er sem hér segir:
WRAPROWS(vector, wrap_count, [pad_with])Hvar:
- vector (áskilið) - uppruna einvíddar fylki eða svið.
- wrap_count (áskilið) - hámarksfjöldi gilda í hverri línu.
- pad_with (valfrjálst) - gildið sem á að fylla með síðustu röðinni ef ekki eru nægir hlutir til að fylla hana. Sjálfgefið er #N/A.
Til dæmis, til að umbreyta sviðinu B5:B24 í 2D fylki með 5 gildi í hverri röð, er formúlan:
=WRAPROWS(B5:B24, 5)
Þú slærð inn formúluna í efri vinstra hólfinu á lekasviðinu og hún fyllir sjálfkrafa út allar aðrar hólf. WRAPROWS aðgerðin raðar gildunum lárétt, frá vinstri til hægri, byggt á wrap_count gildinu. Eftir að talningunni er náð byrjar hún á nýrri röð.
WRAPCOLS og WRAPROWS framboð
Báðar aðgerðir eru aðeins fáanlegar í Excel fyrir Microsoft 365 (Windows og Mac) og Excel fyrir vefinn.
Í fyrriútgáfur, geturðu notað hefðbundnar flóknari formúlur til að framkvæma umbreytingar á dálki í fylki og röð í fylki. Nánar í þessari kennslu munum við ræða aðrar lausnir í smáatriðum.
Ábending. Til að gera öfuga aðgerð, þ.e.a.s. breyta 2D fylki í einn dálk eða röð, notaðu TOCOL eða TOROW aðgerðina, í sömu röð.
Hvernig á að umbreyta dálki / röð í svið í Excel - dæmi
Nú þegar þú ert búinn að ná tökum á grunnnotkuninni skulum við skoða nokkur sértækari tilvik nánar.
Stilltu hámarksfjölda gilda í hverri dálki eða línu
Það fer eftir uppbyggingu upprunalegu gagna þinna, gætirðu fundist það hentugur til að vera endurraðað í dálka (WRAPCOLS) eða raðir (WRAPROWS). Hvaða fall sem þú notar, þá er það wrap_count röksemdin sem ákvarðar hámarksfjölda gilda í hverjum dálki/línu.
Til dæmis, til að umbreyta bilinu B4:B23 í tvívíddar fylki, þannig að hver dálkur hafi að hámarki 10 gildi, notaðu þessa formúlu:
=WRAPCOLS(B4:B23, 10)
Til að endurraða sama bili fyrir röð, þannig að hver röð hafi að hámarki 4 gildi, er formúlan :
=WRAPROWS(B4:B23, 4)
Myndin hér að neðan sýnir hvernig þetta lítur út:
Pad vantar gildi í fylkinu sem myndast
Ef það eru ófullnægjandi gildi til að fylla út allir dálkar/línur á sviðinu sem myndast, WRAPROWS og WRAPCOLS munu skila #N/A villum til að halda uppbyggingu 2D fylkisins.
Til að breyta sjálfgefnahegðun geturðu gefið upp sérsniðið gildi fyrir valfrjálsu pad_with rökin.
Til dæmis, til að umbreyta sviðinu B4:B21 í 2D fylki með hámarks 5 gildi á breidd, og fylla síðasta lína með strikum ef það eru ekki næg gögn til að fylla þær, notaðu þessa formúlu:
=WRAPROWS(B4:B21, 5, "-")
Til að skipta út gildin sem vantar fyrir núll-lengdar strengi (eyður), formúlan er:
=WRAPROWS(B4:B21, 5, "")
Vinsamlegast berðu saman niðurstöðurnar við sjálfgefna hegðun (formúla í D5) þar sem pad_with er sleppt:
Sameina margar línur í 2D svið
Til að sameina nokkrar aðskildar línur í eina 2D fylki, staflarðu röðunum fyrst lárétt með því að nota HSTACK aðgerðina og vefur síðan gildin með WRAPROWS eða WRAPCOLS.
Til dæmis, til að sameina gildin frá 3 raðir (B5:J5, B7:G7 og B9:F9) og vefja þær í dálka, sem hver inniheldur 10 gildi, er formúlan:
=WRAPCOLS(HSTACK(B5:J5, B7:G7, B9:F9), 10)
Til að sameina gildi úr mörgum línum í 2D svið þar sem hver röð inniheldur 5 gildi, formúlan hefur þessa mynd:
=WRAPROWS(HSTACK(B5:J5, B7:G7, B9:F9), 5)
C sameina marga dálka í 2D fylki
Til að sameina nokkra dálka í 2D svið skaltu fyrst stafla þeim lóðrétt með því að nota VSTACK aðgerðina og síðan vefja gildin í raðir (WRAPROWS) eða dálka (WRAPCOLS).
Til dæmis, til að sameina gildin úr 3 dálkum (B5:J5, B7:G7 og B9:F9) í 2D svið þar sem hver dálkur inniheldur 10 gildi, er formúlan:
=WRAPCOLS(HSTACK(B5:J5, B7:G7, B9:F9), 10)
Til að sameinasömu dálka í 2D svið þar sem hver röð inniheldur 5 gildi, notaðu þessa formúlu:
=WRAPROWS(HSTACK(B5:J5, B7:G7, B9:F9), 5)
Vefjaðu og flokkaðu fylkið
Í þeim aðstæðum þegar upprunasviðið hefur gildi í slembi röð á meðan þú vilt að úttakið sé flokkað, haltu áfram á þennan hátt:
- Raðaðu upphafsfylkingunni eins og þú vilt með því að nota SORT aðgerðina.
- Sjáðu flokkaða fylkið til WRAPCOLS eða WRAPROWS.
Til dæmis, til að vefja bilinu B4:B23 í raðir, 4 gildi í hverri, og raða bilinu sem myndast frá A til Ö, búðu til formúlu eins og þessa:
=WRAPROWS(SORT(B4:B23), 4)
Til að vefja sama bilinu í dálka, 10 gildi í hverjum, og raða úttakinu í stafrófsröð, er formúlan:
=WRAPCOLS(SORT(B4:B23), 10)
Niðurstöðurnar líta út sem hér segir :
Ábending. Til að raða gildunum í fylkinu sem myndast í lækkandi röð skaltu stilla þriðju frumbreytu ( röð_röð ) SORT fallsins á -1.
WRAPCOLS valkostur fyrir Excel 365 - 2010
Í eldri Excel útgáfum þar sem WRAPCOLS aðgerðin er ekki studd, geturðu smíðað þína eigin formúlu til að vefja gildin úr einvíddar fylki í dálka. Þetta er hægt að gera með því að nota 5 mismunandi aðgerðir saman.
WRAPCOLS valkostur til að breyta línu í 2D svið:
IFERROR(IF(ROW(A1)> n , "" , INDEX( row_range , , ROW(A1) + (COLUMN(A1)-1)* n )), "")WRAPCOLS valkostur til að breyta dálki í 2D svið:
IFERROR(IF(ROW(A1)> n ,"", INDEX( dálkasvið , ROW(A1) + (DÁLUR(A1)-1)* n )), "")Þar sem n er hámarksfjöldi gilda í hverjum dálki.
Á myndinni hér að neðan notum við eftirfarandi formúlu til að breyta eins raða sviði (D4:J4) í þriggja raða fylki.
=IFERROR(IF(ROW(A1)>3, "", INDEX($D$4:$J$4, , ROW(A1) + (COLUMN(A1)-1)*3)), "")
Og þessi formúla breytir eins dálksviði (B4:B20) í fimm raða fylki:
=IFERROR(IF(ROW(A1)>5, "", INDEX($B$4:$B$20, ROW(A1) + (COLUMN(A1)-1)*5)), "")
Ofangreindar lausnir líkja eftir hliðstæðum WRAPCOLS formúlum og framleiðir sömu niðurstöður:
=WRAPCOLS(D4:J4, 3, "")
og
=WRAPCOLS(B4:B20, 5, "")
Vinsamlegast hafðu í huga að ólíkt dynamic array WRAPCOLS fallinu fylgja hefðbundnar formúlur einnar formúlu-einnar frumu nálgun. Svo, fyrsta formúlan okkar er slegin inn í D8 og afrituð 3 raðir niður og 3 dálkar til hægri. Önnur formúlan er slegin inn í D14 og afrituð 5 línur niður og 4 dálka til hægri.
Hvernig þessar formúlur virka
Í hjarta beggja formúlanna notum við INDEX fallið sem skilar gildi úr tilgreindu fylki byggt á röð og dálknúmeri:
INDEX(array, row_num, [column_num])Þar sem við erum að fást við einnar röð fylki, getum við sleppt row_num rökinu, þannig að það er sjálfgefið 1. Bragðið er að hafa col_num reiknað sjálfkrafa fyrir hvern reit þar sem formúlan er afrituð. Og svona gerum við þetta:
ROW(A1)+(COLUMN(A1)-1)*3)
ROW fallið skilar línunúmeri A1 tilvísunarinnar, sem er 1.
COLUMN fallið skilar dálknúmeriA1 tilvísunin, sem er líka 1. Ef 1 er dregið frá breytist það í núll. Og margföldun 0 með 3 gefur 0.
Síðan leggurðu saman 1 sem skilað er af ROW og 0 sem skilað er af DÁLI og færð 1 í kjölfarið.
Þannig er INDEX formúlan í efri hlutanum. -vinstra hólf á áfangastaðnum (D8) fer í þessa umbreytingu:
INDEX($D$4:$J$4, ,ROW(A1) + (COLUMN(A1)-1)*3))
breytist í
INDEX($D$4:$J$4, ,1)
og skilar gildinu úr 1. dálki af tilgreindu fylki, sem er "Epli" í D4.
Þegar formúlan er afrituð í reit D9 breytast hlutfallslegar frumutilvísanir miðað við hlutfallslega staðsetningu lína og dálka á meðan algilda tilvísunin er óbreytt:
INDEX($D$4:$J$4,, ROW(A2)+(COLUMN(A2)-1)*3))
breytist í:
INDEX($D$4:$J$4,, 2+(1-1)*3))
verður:
INDEX($D$4:$J$4,, 2))
og skilar gildinu frá 2. dálkur í tilgreindu fylki, sem er "Apríkósur" í E4.
IF aðgerðin athugar línunúmerið og ef það er meira en fjöldi raða sem þú tilgreindir (3 í okkar tilfelli) skilar tómum streng ( ""), annars er niðurstaða INDEX fallsins:
IF(ROW(A1)>3, "", INDEX(…))
Að lokum lagar IFERROR fallið #REF! villa sem kemur upp þegar formúlan er afrituð í fleiri frumur en raunverulega þarf.
Önnur formúlan sem breytir dálki í tvívíddarsvið virkar með sömu rökfræði. Munurinn er sá að þú notar ROW + COLUMN samsetninguna til að finna út row_num rökin fyrir INDEX. col_num færibreytan er ekki nauðsynleg í þessu tilfelli þar sem það er baraeinn dálkur í frumfylki.
WRAPROWS valkostur fyrir Excel 365 - 2010
Til að vefja gildum úr einvíddarfylki í línur í Excel 2019 og eldri, geturðu notað eftirfarandi valkostir við WRAPROWS fallið.
Umbreyttu línu í 2D svið:
IFERROR(IF(COLUMN(A1)> n , "", INDEX( row_range , , COLUMN(A1)+(ROW(A1)-1)* n )), "")Breyta dálki í 2D svið:
IFERROR(IF( COLUMN(A1)> n , "", INDEX( dálkasvið , DÁLUR(A1)+(ROW(A1)-1)* n )) , "")Þar sem n er hámarksfjöldi gilda í hverri línu.
Í sýnishornsgagnasafninu okkar notum við eftirfarandi formúlu til að umbreyta svið í einni röð (D4) :J4) í þriggja dálka svið. Formúlan lendir í reit D8 og er síðan afrituð yfir 3 dálka og 3 raðir.
=IFERROR(IF(COLUMN(A1)>3, "", INDEX($D$4:$J$4, , COLUMN(A1)+(ROW(A1)-1)*3)), "")
Til að endurmóta 1 dálka svið (B4:B20) í 5 dálka svið, sláðu inn formúluna hér að neðan í D14 og dragðu hana yfir 5 dálka og 4 raðir.
=IFERROR(IF(COLUMN(A1)>5, "", INDEX($B$4:$B$20, COLUMN(A1)+(ROW(A1)-1)*5)), "")
Í Excel 365 er hægt að ná sama árangri með jafngildum WRAPCOLS formúlum:
=WRAPROWS(D4:J4, 3, "")
og
=WRAPROWS(B4:B20, 5, "")
Hvernig þessar formúlur virka
Í meginatriðum virka þessar formúlur eins og í fyrra dæminu. Munurinn er í því hvernig þú ákvarðar röð_númer og dálk_númer fyrir INDEX fallið:
INDEX($D$4:$J$4,, COLUMN(A1)+(ROW(A1)-1)*3))
Til að fá dálknúmerið fyrir efri vinstri hólf á áfangastaðnum (D8), þú notar þettatjáning:
COLUMN(A1)+(ROW(A1)-1)*3)
sem breytist í:
1+(1-1)*3
og gefur 1.
Þar af leiðandi skilar formúlan hér að neðan gildinu úr fyrsta dálki tilgreindrar fylkis, sem er "Epli":
INDEX($D$4:$J$4,, 1)
Enn sem komið er er niðurstaðan sú sama og í fyrri dæmi. En við skulum sjá hvað gerist í öðrum frumum...
Í reit D9 breytast hlutfallslegar frumutilvísanir sem hér segir:
INDEX($D$4:$J$4,, COLUMN(A2)+(ROW(A2)-1)*3))
Þannig að formúlan breytist í:
INDEX($D$4:$J$4,, 1+(2-1)*3))
verður:
INDEX($D$4:$J$4,, 4))
og skilar gildinu úr 4. dálki tilgreindrar fylkis, sem er "Cherries" í G4.
IF fallið athugar dálknúmerið og ef það er meira en fjöldi dálka sem þú tilgreindir, skilar tómum streng (""), annars er niðurstaðan INDEX fallsins:
IF(COLUMN(A1)>3, "", INDEX(…))
Sem frágangur kemur IFERROR í veg fyrir #REF! villur frá því að birtast í „auka“ hólfum ef þú afritar formúluna í fleiri hólfa en raunverulega þarf.
WRAPCOLS eða WRAPROWS aðgerð virkar ekki
Ef „wrap“ aðgerðirnar eru ekki tiltækar í Excel eða leiða til villu er líklegast að það sé ein af neðangreindum ástæðum.
#NAME? villa
Í Excel 365, #NAME? villa gæti komið upp vegna þess að þú stafsettir nafn aðgerðarinnar rangt. Í öðrum útgáfum gefur það til kynna að aðgerðirnar séu ekki studdar. Sem lausn geturðu notað WRAPCOLS val eða WRAPROWS val.
#VALUE! villa
#VALUE villa kemur upp ef