Փոխարկեք սյունակը/տողը զանգվածի Excel-ում՝ WRAPCOLS & amp; WRAPROWS գործառույթները

  • Կիսվել Սա
Michael Brown

Արժեքների սյունակը կամ տողը երկչափ զանգվածի վերածելու ամենաարագ ճանապարհը WRAPCOLS կամ WRAPROWS ֆունկցիայի օգտագործումն է:

Excel-ի առաջին օրերից ի վեր, շատ լավ է թվերը հաշվում և վերլուծում: Սակայն զանգվածների մանիպուլյացիան ավանդաբար մարտահրավեր էր: Դինամիկ զանգվածների ներդրումը շատ ավելի հեշտացրեց զանգվածների բանաձևերի օգտագործումը: Եվ հիմա, Microsoft-ը թողարկում է նոր դինամիկ զանգվածի գործառույթների մի շարք՝ զանգվածները մանիպուլացնելու և ձևավորելու համար: Այս ձեռնարկը կսովորեցնի ձեզ, թե ինչպես օգտագործել երկու նման գործառույթներ՝ WRAPCOLS և WRAPROWS՝ կարճ ժամանակում սյունակը կամ տողը 2D զանգվածի վերածելու համար:

Excel WRAPCOLS ֆունկցիան

Excel-ում WRAPCOLS ֆունկցիան փոխակերպում է արժեքների տող կամ սյունակ երկչափ զանգվածի` յուրաքանչյուր տողում նշված արժեքների քանակի հիման վրա:

Շարահյուսությունն ունի հետևյալ արգումենտները.

WRAPCOLS(vector, wrap_count, [pad_with])

Որտեղ՝

  • վեկտոր (պահանջվում է) - աղբյուրի միաչափ զանգված կամ տիրույթ:
  • wrap_count (պահանջվում է) - արժեքների առավելագույն քանակը մեկ սյունակում:
  • pad_with (ըստ ցանկության) - արժեքը, որը պետք է լրացվի վերջին սյունակով, եթե այն լրացնելու համար բավարար տարրեր չկան: Եթե ​​բաց թողնվի, բաց թողնված արժեքները կլրացվեն #N/A-ով (կանխադրված):

Օրինակ՝ B5:B24 միջակայքը փոխելու համար երկչափ զանգվածի 5 արժեք յուրաքանչյուր սյունակում, բանաձևը հետևյալն է.

=WRAPROWS(B5:B24, 5)

Դուք մուտքագրում եք վեկտոր արգումենտը միաչափ զանգված չէ:

#NUM! error

#NUM սխալ է առաջանում, եթե wrap_count արժեքը 0 է կամ բացասական թիվ:

#SPILL! error

Ամենից հաճախ, #SPILL սխալը ցույց է տալիս, որ բավարար դատարկ բջիջներ չկան արդյունքները թափելու համար: Մաքրել հարևան բջիջները, և այն կվերանա: Եթե ​​սխալը շարունակվում է, ստուգեք, թե ինչ է նշանակում #SPILL Excel-ում և ինչպես շտկել այն:

Ահա թե ինչպես կարելի է օգտագործել WRAPCOLS և WRAPROWS գործառույթները Excel-ում միաչափ ընդգրկույթը երկչափ զանգվածի վերածելու համար: Ես շնորհակալություն եմ հայտնում կարդալու համար և հուսով եմ, որ հաջորդ շաբաթ կտեսնենք ձեզ մեր բլոգում:

Պրակտիկ աշխատանքային գրքույկ ներբեռնման համար

WRAPCOLS և WRAPROWS գործառույթները - օրինակներ (.xlsx ֆայլ)

>բանաձևը ցանկացած մեկ բջիջում, և այն ավտոմատ կերպով թափվում է այնքան բջիջներ, որքան անհրաժեշտ է: WRAPCOLS-ի ելքում արժեքները դասավորված են ուղղահայաց՝ վերևից ներքև՝ հիմնվելով wrap_countարժեքի վրա: Հաշվարկը հասնելուց հետո սկսվում է նոր սյունակ:

Excel WRAPROWS ֆունկցիան

Excel-ում WRAPROWS ֆունկցիան փոխակերպում է արժեքների տող կամ սյունակ երկչափ զանգվածի` հիմնվելով ձեր նշած յուրաքանչյուր տողի արժեքների քանակի վրա:

Շարահյուսությունը հետևյալն է.

WRAPROWS(vector, wrap_count, [pad_with])

Որտեղ:

  • վեկտոր (պահանջվում է) - աղբյուրը միաչափ զանգված կամ տիրույթ:
  • wrap_count (պահանջվում է) - արժեքների առավելագույն քանակը մեկ տողում:
  • pad_with (ըստ ցանկության) - արժեքը pad-ի համար վերջին շարքով, եթե այն լրացնելու համար բավարար կետեր չկան: Լռելյայն #N/A է:

Օրինակ, B5:B24 միջակայքը փոխակերպելու համար յուրաքանչյուր տողում 5 արժեք ունեցող 2D զանգվածի, բանաձևը հետևյալն է.

=WRAPROWS(B5:B24, 5)

Դուք մուտքագրում եք բանաձևը թափվելու տիրույթի վերին ձախ բջիջում, և այն ավտոմատ կերպով լրացնում է մնացած բոլոր բջիջները: WRAPROWS ֆունկցիան արժեքները դասավորում է հորիզոնական՝ ձախից աջ՝ հիմնվելով wrap_count արժեքի վրա: Հաշվարկին հասնելուց հետո այն սկսում է նոր շարք:

WRAPCOLS-ի և WRAPROWS-ի հասանելիությունը

Երկու գործառույթներն էլ հասանելի են միայն Excel-ում Microsoft 365-ի համար (Windows և Mac) և Excel-ում համացանցի համար:

Ավելի վաղտարբերակները, դուք կարող եք օգտագործել ավանդական ավելի բարդ բանաձևեր՝ սյունակից զանգված և տողից զանգված փոխակերպումներ կատարելու համար: Հետագայում այս ձեռնարկում մենք մանրամասն կքննարկենք այլընտրանքային լուծումները:

Խորհուրդ. Հակադարձ գործողություն կատարելու համար, այսինքն՝ 2D զանգվածը մեկ սյունակի կամ տողի փոխելու համար օգտագործեք համապատասխանաբար TOCOL կամ TOROW ֆունկցիաները:

Ինչպես վերափոխել սյունակը / տողը տիրույթի Excel-ում - օրինակներ

Այժմ, երբ հասկացաք հիմնական օգտագործումը, եկեք ավելի մանրամասն նայենք մի քանի այլ կոնկրետ դեպքերի:

Սահմանեք արժեքների առավելագույն քանակը յուրաքանչյուր սյունակի կամ տողի համար

Կախված նրանից ձեր սկզբնական տվյալների կառուցվածքը, դուք կարող եք հարմար համարել այն վերադասավորվել սյունակների (WRAPCOLS) կամ տողերի (WRAPROWS): Որ ֆունկցիան էլ որ օգտագործեք, դա wrap_count արգումենտն է, որը որոշում է արժեքների առավելագույն թիվը յուրաքանչյուր սյունակում/տողում։

Օրինակ՝ B4:B23 միջակայքը 2D զանգվածի վերածելու համար, այնպես, որ յուրաքանչյուր սյունակ ունենա առավելագույնը 10 արժեք, օգտագործեք այս բանաձևը.

=WRAPCOLS(B4:B23, 10)

Նույն միջակայքը ըստ տող վերադասավորելու համար, որպեսզի յուրաքանչյուր տող ունենա առավելագույնը 4 արժեք, բանաձևը հետևյալն է. :

=WRAPROWS(B4:B23, 4)

Ստորև բերված պատկերը ցույց է տալիս, թե ինչ տեսք ունի սա. Ստացված միջակայքի բոլոր սյունակները/տողերը, WRAPROWS-ը և WRAPCOLS-ը կվերադարձնեն #N/A սխալները՝ 2D զանգվածի կառուցվածքը պահպանելու համար:

Նախնականը փոխելու համար:վարքագիծը, դուք կարող եք տրամադրել հատուկ արժեք կամընտիր pad_with արգումենտի համար:

Օրինակ՝ B4:B21 միջակայքը վերածելու 2D զանգվածի առավելագույնը 5 արժեքներով լայնությամբ, և լրացրեք վերջինը: գծիկներով տող, եթե այն լրացնելու համար բավարար տվյալներ չկան, օգտագործեք այս բանաձևը.

=WRAPROWS(B4:B21, 5, "-")

Բաց թողնված արժեքները զրոյական երկարությամբ տողերով (դատարկ) փոխարինելու համար բանաձևը հետևյալն է>

=WRAPROWS(B4:B21, 5, "")

Խնդրում ենք համեմատել արդյունքները լռելյայն վարքագծի հետ (բանաձևը D5-ում), որտեղ pad_with բաց է թողնվել.

Միավորել բազմաթիվ տողեր 2D տիրույթում

Մի քանի առանձին տողեր մեկ 2D զանգվածի մեջ միավորելու համար նախ տողերը տեղադրում եք հորիզոնական՝ օգտագործելով HSTACK ֆունկցիան, այնուհետև արժեքները փաթաթում եք WRAPROWS-ի կամ WRAPCOLS-ի միջոցով:

Օրինակ՝ արժեքները միաձուլելու համար 3 տող (B5:J5, B7:G7 և B9:F9) և փաթեթավորեք սյունակների մեջ, որոնցից յուրաքանչյուրը պարունակում է 10 արժեք, բանաձևը հետևյալն է.

=WRAPCOLS(HSTACK(B5:J5, B7:G7, B9:F9), 10)

Մի քանի տողերից արժեքները միավորելու համար 2D միջակայք, որտեղ յուրաքանչյուր տող պարունակում է 5 արժեք, բանաձևը ստանում է հետևյալ ձևը.

=WRAPROWS(HSTACK(B5:J5, B7:G7, B9:F9), 5)

C միացրեք բազմաթիվ սյունակներ 2D զանգվածի մեջ

Մի քանի սյունակներ 2D տիրույթում միավորելու համար նախ դրանք ուղղահայաց տեղադրեք՝ օգտագործելով VSTACK ֆունկցիան, այնուհետև արժեքները փաթաթեք տողերի (WRAPROWS) կամ սյունակների (WRAPCOLS):

Օրինակ՝ 3 սյունակից (B5:J5, B7:G7 և B9:F9) արժեքները միավորելու համար 2D միջակայքում, որտեղ յուրաքանչյուր սյունակ պարունակում է 10 արժեք, բանաձևը հետևյալն է.

=WRAPCOLS(HSTACK(B5:J5, B7:G7, B9:F9), 10)

Համատեղելու համարնույն սյունակները 2D տիրույթում, որտեղ յուրաքանչյուր տող պարունակում է 5 արժեք, օգտագործեք այս բանաձևը.

=WRAPROWS(HSTACK(B5:J5, B7:G7, B9:F9), 5)

Փաթաթեք և տեսակավորեք զանգվածը

Այն իրավիճակում, երբ աղբյուրի տիրույթն ունի արժեքներ. պատահական կարգով, մինչ ցանկանում եք, որ ելքը տեսակավորվի, շարունակեք այս կերպ.

  1. Տեսակավորեք սկզբնական զանգվածը այնպես, ինչպես ցանկանում եք, օգտագործելով SORT ֆունկցիան:
  2. Տեսակավորված զանգվածը տրամադրեք WRAPCOLS-ին: կամ WRAPROWS:

Օրինակ՝ B4:B23 միջակայքը տողերի մեջ փաթաթելու համար, յուրաքանչյուրում 4 արժեք, և ստացված միջակայքը A-ից Z տեսակավորելու համար, կառուցեք հետևյալ բանաձևը.

=WRAPROWS(SORT(B4:B23), 4)

Նույն տիրույթը սյունակներում փաթաթելու համար, յուրաքանչյուրում 10 արժեք, և արդյունքը այբբենական կարգով դասավորելու համար, բանաձևը հետևյալն է.

Հուշում. Ստացված զանգվածում արժեքները նվազման կարգով դասավորելու համար SORT ֆունկցիայի երրորդ արգումենտը ( sort_order ) սահմանեք -1:

WRAPCOLS այլընտրանք Excel 365-ի համար: - 2010

Excel-ի հին տարբերակներում, որտեղ WRAPCOLS ֆունկցիան չի ապահովվում, դուք կարող եք ստեղծել ձեր սեփական բանաձևը՝ արժեքները միաչափ զանգվածից սյունակների մեջ փաթաթելու համար: Դա կարելի է անել՝ օգտագործելով 5 տարբեր գործառույթներ միասին:

WRAPCOLS այլընտրանք՝ տողը 2D տիրույթի վերածելու համար.

IFERROR(IF(ROW(A1)> n , "" , INDEX( row_range , , ROW(A1) + (COLUMN(A1)-1)* n )), "")

WRAPCOLS այլընտրանք սյունակը 2D փոխարկելու համար միջակայք՝

IFERROR(IF(ROW(A1)> n ,"", INDEX( սյունակի_միջակայք , ROW(A1) + (COLUMN(A1)-1)* n )), "")

Որտեղ n յուրաքանչյուր սյունակի արժեքների առավելագույն քանակն է:

Ստորև բերված պատկերում մենք օգտագործում ենք հետևյալ բանաձևը` մեկ տողով ընդգրկույթը (D4:J4) վերածելու երեք տողանոց զանգվածի:

=IFERROR(IF(ROW(A1)>3, "", INDEX($D$4:$J$4, , ROW(A1) + (COLUMN(A1)-1)*3)), "")

Եվ այս բանաձևը փոխում է մեկ սյունակի միջակայքը (B4:B20) հինգ տողանոց զանգվածի. և ստացեք նույն արդյունքները.

=WRAPCOLS(D4:J4, 3, "")

և

=WRAPCOLS(B4:B20, 5, "")

Խնդրում ենք նկատի ունենալ, որ ի տարբերություն դինամիկ զանգվածի WRAPCOLS ֆունկցիայի, ավանդական բանաձևերը հետևում են հետևյալին. մեկ բանաձև-մեկ բջջային մոտեցում. Այսպիսով, մեր առաջին բանաձևը մուտքագրվում է D8-ում և պատճենվում 3 տող ներքև և 3 սյունակ դեպի աջ: Երկրորդ բանաձեւը մուտքագրվում է D14-ում և պատճենվում է 5 տող ներքև և 4 սյունակ դեպի աջ:

Ինչպես են աշխատում այս բանաձևերը

Երկու բանաձևերի հիմքում մենք օգտագործում ենք INDEX ֆունկցիան, որը վերադարձնում է արժեք մատակարարված զանգվածից՝ հիմնված տողի և սյունակի համարի վրա.

INDEX (զանգված, շարք_num, [column_num])

Քանի որ մենք գործ ունենք մեկ տողանոց զանգվածի հետ, մենք կարող ենք բաց թողնել row_num արգումենտը, ուստի այն լռելյայն 1 է: Խնդիրն այն է, որ col_num ավտոմատ կերպով հաշվարկվում է յուրաքանչյուր բջիջի համար, որտեղ պատճենված է բանաձևը: Եվ ահա թե ինչպես ենք մենք դա անում.

INDEX($D$4:$J$4, ,1)

ROW ֆունկցիան վերադարձնում է A1 հղումի տողի համարը, որը 1 է:

COLUMN ֆունկցիան վերադարձնում է սյունակի համարը:A1 հղումը, որը նույնպես 1 է: 1-ը հանելով՝ այն վերածվում է զրոյի: Իսկ 0-ը 3-ով բազմապատկելով՝ ստացվում է 0:

Այնուհետև գումարում եք 1-ը, որը վերադարձվում է ROW-ով և 0-ը, որը վերադարձվում է COLUMN-ով, և արդյունքում ստանում եք 1:

Այսպես, INDEX բանաձևը վերևում -Նպատակակետի միջակայքի ձախ բջիջը (D8) ենթարկվում է այս փոխակերպմանը.

INDEX($D$4:$J$4, ,ROW(A1) + (COLUMN(A1)-1)*3))

փոխվում է

INDEX($D$4:$J$4, ,1)

և վերադարձնում է արժեքը 1-ին սյունակից: նշված զանգվածի, որը «Apple» է D4-ում:

Երբ բանաձևը պատճենվում է D9 բջիջում, բջիջների հարաբերական հղումները փոխվում են տողերի և սյունակների հարաբերական դիրքի հիման վրա, մինչդեռ բացարձակ միջակայքի հղումը մնում է անփոփոխ.

INDEX($D$4:$J$4,, ROW(A2)+(COLUMN(A2)-1)*3))

վերածվում է.

INDEX($D$4:$J$4,, 2+(1-1)*3))

դառնում է`

INDEX($D$4:$J$4,, 2))

և վերադարձնում է արժեքը Նշված զանգվածի 2-րդ սյունակը, որը E4-ում «Apricots» է:

IF ֆունկցիան ստուգում է տողի համարը և եթե այն մեծ է ձեր նշած տողերի քանակից (մեր դեպքում 3) վերադարձնում է դատարկ տող ( ""), հակառակ դեպքում INDEX ֆունկցիայի արդյունքը.

IF(ROW(A1)>3, "", INDEX(…))

Վերջապես, IFERROR ֆունկցիան ամրագրում է #REF! սխալ, որը տեղի է ունենում, երբ բանաձևը պատճենվում է ավելի շատ բջիջներում, քան իրականում անհրաժեշտ է:

Երկրորդ բանաձևը, որը սյունակը վերածում է 2D տիրույթի, աշխատում է նույն տրամաբանությամբ: Տարբերությունն այն է, որ դուք օգտագործում եք ROW + COLUMN համակցությունը՝ INDEX-ի համար row_num արգումենտը պարզելու համար: col_num պարամետրն այս դեպքում անհրաժեշտ չէ, քանի որ կա պարզապեսմեկ սյունակ սկզբնաղբյուր զանգվածում:

WRAPROWS այլընտրանք Excel 365 - 2010

Excel 2019-ում և ավելի վաղ միաչափ զանգվածից արժեքները տողերի մեջ փաթաթելու համար կարող եք օգտագործել WRAPROWS ֆունկցիայի հետևյալ այլընտրանքները:

Փոխակերպեք տողը 2D տիրույթի.

IFERROR(IF(COLUMN(A1)> n , "", INDEX( row_range , , COLUMN(A1)+(ROW(A1)-1)* n )), "")

Փոխեք սյունակը 2D տիրույթի.

IFERROR(IF( COLUMN(A1)> n , "", INDEX( սյունակի_ընդգրկույթ , COLUMN(A1)+(ROW(A1)-1)* n )) , "")

Որտեղ n մեկ տողում արժեքների առավելագույն քանակն է։

Մեր ընտրանքային տվյալների հավաքածուում մենք օգտագործում ենք հետևյալ բանաձևը՝ մեկ տողով միջակայքը փոխարկելու համար (D4 :J4) եռասյունանի միջակայքում: Բանաձևը հայտնվում է D8 բջիջում, այնուհետև պատճենվում է 3 սյունակում և 3 տողում:

=IFERROR(IF(COLUMN(A1)>3, "", INDEX($D$4:$J$4, , COLUMN(A1)+(ROW(A1)-1)*3)), "")

1-սյունակ ընդգրկույթը (B4:B20) 5-սյունակ տիրույթի վերածելու համար, մուտքագրեք ստորև բերված բանաձևը D14-ում և քաշեք այն 5 սյունակների և 4 տողերի միջով:

=IFERROR(IF(COLUMN(A1)>5, "", INDEX($B$4:$B$20, COLUMN(A1)+(ROW(A1)-1)*5)), "")

Excel 365-ում նույն արդյունքները կարելի է ձեռք բերել համարժեք WRAPCOLS բանաձևերով.

=WRAPROWS(D4:J4, 3, "")

և

=WRAPROWS(B4:B20, 5, "")

Ինչպես են աշխատում այս բանաձևերը

Ըստ էության, այս բանաձևերն աշխատում են ինչպես նախորդ օրինակում: Տարբերությունն այն է, թե ինչպես եք որոշում row_num և col_num կոորդինատները INDEX ֆունկցիայի համար.

INDEX($D$4:$J$4,, COLUMN(A1)+(ROW(A1)-1)*3))

Վերին սյունակի համարը ստանալու համար: ձախ բջիջը նպատակակետի միջակայքում (D8), դուք օգտագործում եք սաարտահայտություն՝

COLUMN(A1)+(ROW(A1)-1)*3)

, որը փոխվում է՝

1+(1-1)*3

և տալիս է 1։

Արդյունքում ստորև բերված բանաձևը վերադարձնում է արժեքը նշված զանգվածի առաջին սյունակից, որը «Apple» է.

INDEX($D$4:$J$4,, 1)

Մինչ այժմ արդյունքը նույնն է, ինչ նախորդում: օրինակ. Բայց տեսնենք, թե ինչ է տեղի ունենում այլ բջիջներում…

D9 բջիջում հարաբերական բջիջների հղումները փոխվում են հետևյալ կերպ.

INDEX($D$4:$J$4,, COLUMN(A2)+(ROW(A2)-1)*3))

Այսպիսով, բանաձևը վերածվում է.

INDEX($D$4:$J$4,, 1+(2-1)*3))

դառնում է`

INDEX($D$4:$J$4,, 4))

և վերադարձնում է արժեքը նշված զանգվածի 4-րդ սյունակից, որը G4-ում «Cherries» է:

IF ֆունկցիան ստուգում է սյունակի համարը և եթե այն մեծ է ձեր նշած սյունակների քանակից, վերադարձնում է դատարկ տող (""), հակառակ դեպքում INDEX ֆունկցիայի արդյունքը.

IF(COLUMN(A1)>3, "", INDEX(…))

<0:> Որպես ավարտական ​​հպում, IFERROR-ը կանխում է #REF-ը: «Լրացուցիչ» բջիջներում հայտնվելու սխալներ, եթե բանաձեւը պատճենում եք իրականում անհրաժեշտից ավելի շատ բջիջներում:

WRAPCOLS կամ WRAPROWS ֆունկցիան չի աշխատում

Եթե «փաթաթել» գործառույթները հասանելի չեն: Ձեր Excel-ում, թե սխալ է առաջանում, ամենայն հավանականությամբ դա ստորև բերված պատճառներից մեկն է:

#NAME? սխալ

Excel 365-ում, արդյոք #NAME: սխալ կարող է առաջանալ, քանի որ դուք սխալ եք գրել ֆունկցիայի անունը: Այլ տարբերակներում դա ցույց է տալիս, որ գործառույթները չեն ապահովվում: Որպես լուծում, դուք կարող եք օգտագործել WRAPCOLS այլընտրանքը կամ WRAPROWS այլընտրանքը:

#VALUE! սխալ

#VALUE սխալ է տեղի ունենում, եթե

Մայքլ Բրաունը նվիրված տեխնոլոգիայի էնտուզիաստ է, որը ձգտում է պարզեցնել բարդ գործընթացները՝ օգտագործելով ծրագրային գործիքները: Տեխնոլոգիական ոլորտում ավելի քան մեկ տասնամյակ փորձ ունենալով՝ նա կատարելագործել է իր հմտությունները Microsoft Excel-ում և Outlook-ում, ինչպես նաև Google Sheets-ում և Docs-ում: Մայքլի բլոգը նվիրված է իր գիտելիքներն ու փորձառությունը ուրիշների հետ կիսելուն՝ տրամադրելով հեշտ օգտագործվող խորհուրդներ և ձեռնարկներ՝ արտադրողականությունն ու արդյունավետությունը բարձրացնելու համար: Անկախ նրանից, թե դուք փորձառու մասնագետ եք, թե սկսնակ, Մայքլի բլոգը առաջարկում է արժեքավոր պատկերացումներ և գործնական խորհուրդներ՝ առավելագույն օգուտ քաղելու այս կարևոր ծրագրային գործիքներից: