Edukien taula
Matrize edo barruti bat zutabe bihurtzeko modu erraz bat TOCOL funtzioarekin.
Datuak zutabeetatik errenkadetara eta alderantziz transferitzeko gaitasuna nahikoa da Excel-en. momentu bat. Baina gelaxka sorta bat zutabe bakar batean bihurtzea lan zaila izan zen. Orain, azkenean hori aldatzen ari da. Microsoft-ek funtzio berri bat aurkeztu du, TOCOL izenekoa, zeinak keinu batean array-to-zutabe eraldaketa bat egin dezakeena. Jarraian, funtzio berri honek erraz ebatzi ditzakeen zereginen zerrenda dago.
Excel TOCOL funtzioa
Excel-en TOCOL funtzioak gelaxka sorta edo sorta bakar batean bihurtzen du. zutabea.
Funtzioak hiru argumentu hartzen ditu, baina lehenengoa bakarrik behar da.
TOCOL(matrizea, [ez ikusi], [eskaneatu_zutabearen arabera])Non:
Matrizea (beharrezkoa) - zutabe batean eraldatzeko matrizea edo barrutia.
Ignoratu (aukerakoa) - hutsuneak edo/eta akatsak baztertu behar diren zehazten du. Balio hauetako bat izan daiteke:
- 0 edo baztertua (lehenetsia) - mantendu balio guztiak
- 1 - ez ikusi hutsuneak
- 2 - ez ikusi erroreak
- 3 - ez ikusi hutsuneak eta erroreak
Scan_by_column (aukerakoa) - matrizea horizontalki edo bertikalki eskaneatu behar den zehazten du:
- FALSE edo baztertuta (lehenetsia) - eskaneatu matrizea errenkadaka ezkerretik eskuinera.
- EGIA - eskaneatu matrizea zutabeka goitik behera.
Aholkuak:
- Matrize bat errenkada bakar batean bihurtzeko, erabili TOROWfuntzioa.
- Zutabetik matrizearen eraldaketa kontrakoa egiteko, erabili WRAPCOLS funtzioa zutabez biltzeko edo WRAPROWS funtzioa errenkadaka biltzeko.
- Matrize bat horizontaletik itzultzeko. bertikala edo alderantziz, hau da, aldatu errenkadak zutabeetara, erabili TRANSPOSE funtzioa.
TOCOL erabilgarritasuna
TOCOL funtzio berria da, Excel-en onartzen dena Microsoft 365erako (Windows-erako eta Mac) eta Excel weberako.
Barrutia zutabe bihurtzeko TOCOL oinarrizko formula
TOCOL formulak bere forma sinpleenean argumentu bakarra behar du - array . Adibidez, 3 zutabe eta 4 errenkadaz osatutako bi dimentsioko matrize bat zutabe bakarrean jartzeko, hau da formula:
=TOCOL(A2:C5)
Formula gelaxka batean bakarrik sartzen da (E2-n. adibide hau) eta beheko gelaxketara automatikoki isurtzen da. Excel-i dagokionez, emaitza isurketa-barrutia deritzo.
Formula honek nola funtzionatzen duen:
Teknikoki, A2:C5 barrutia lehenik bi dimentsioko matrize batean bihurtzen da. Kontuan izan puntu eta koma bidez bereizitako errenkadak eta komaz mugatutako zutabeak:
{"Apple","Banana","Cherry";1,0,3;4,#N/A,6;7,8,9}
TOCOL funtzioak array-a ezkerretik eskuinera eskaneatzen du eta dimentsio bakarreko matrize bertikal batean bihurtzen du:
{"Apple";"Banana";"Cherry";1;0;3;4;#N/A;6;7;8;9}
Emaitza E2 gelaxkan jartzen da, eta hortik beheko gelaxketara isurtzen da.
Nola erabili TOCOL funtzioa Excel-en - formula adibideak
Gehiago ulertzekoTOCOL funtzioaren aukerak eta zer zeregin bete ditzakeen, ikus ditzagun formula-adibide batzuk.
Eraldatu array zutabe hutsuneak eta akatsak alde batera utzita
Aurreko adibidean ohartuko zinen bezala. , TOCOL formula lehenetsiak iturburu-matrizeko balio guztiak gordetzen ditu, gelaxka hutsak eta erroreak barne.
Ondorioz, gelaxka hutsak zeroen bidez adierazten dira, eta hori nahiko nahasia izan daiteke, batez ere jatorrizko matrizeak badu. 0 balio. Irtenbidea hutsuneak saltatzea da. Horretarako, 2. argumentua 1ean ezarri duzu:
=TOCOL(A2:C5, 1)
erroreei ez ikusiarena egiteko , ezarri 2. argumentua 2:
=TOCOL(A2:C5, 2)
Biak, hutsuneak eta akatsak baztertzeko, erabili 3 ez ikusi argumenturako:
=TOCOL(A2:C5, 3)
Eskaneatu array horizontalki edo bertikalki
scan_by_column argumentu lehenetsiarekin (FALSE edo baztertuta), TOCOL funtzioak horizontalean eskaneatzen du matrizea errenkadaka. Balioak zutabeka prozesatzeko, ezarri argumentu hau EGIA edo 1. Adibidez:
=TOCOL(A2:C5, ,TRUE)
Kontuan izan, bi kasuetan, itzulitako matrizeak tamaina berekoak direla, baina balioak antolatuta daudela. beste ordena batean.
Konbinatu hainbat barruti zutabe batean
Aldakoak ez diren hainbat barrutirekin ari bazara, lehenik eta behin barrutiak bertikalki konbina ditzakezu matrize bakar batean VSTACK funtzioaren laguntzaz, eta ondoren, erabili TOCOL matrize konbinatua zutabe bihurtzeko.
Lehenengo barrutia A2:C4 eta bigarren barrutia A8:C9 dela suposatuz, formulak forma hau hartzen du:
=TOCOL(VSTACK(A2:C4, A8:C9))
Formula honek portaera lehenetsia erakusten du - array konbinatuak ezkerretik horizontalean irakurtzen ditu. eskuinera beheko irudiko E zutabean agertzen den bezala.
Balioak goitik behera bertikalki irakurtzeko, TOCOL-en 3. argumentua TRUE gisa ezarri duzu:
=TOCOL(VSTACK(A2:C4, A8:C9), ,TRUE)
Mesedez, kontutan izan, kasu honetan, formulak lehenik bi matrizeetako A zutabeko balioak itzultzen dituela, gero B zutabetik eta abar. Arrazoia da TOCOLek pilatutako array bakarra eskaneatzen duela, ez jatorrizko barruti indibidualak.
Zure negozio-logikak jatorrizko barrutiak bertikalki ez horizontalean pilatzea eskatzen badu, erabili HSTACK funtzioa VSTACK-en ordez.
Ondoko array bakoitza aurreko arrayaren eskuinaldean eransteko eta irakurri konbinatutako matrizeak horizontalean, formula hau da:
=TOCOL(HSTACK(A2:C4, A8:C10))
Ondoko matrize bakoitza aurreko matrizearen eskuinean gehitzeko eta konbinatutako matrizeak bertikalki eskaneatzeko, formula hau da:
=TOCOL(HSTACK(A2:C4, A8:C10), ,TRUE)
Atera ezazu balio esklusiboak zutabe anitzeko barruti batetik
Excel UNIQUE funtzioak erraz aurki ditzake bakarrak zutabe edo errenkada bakarrean, baita errenkada esklusiboak itzuli ere, baina ezin ditu balio esklusiboak atera. zutabe anitzeko array bat. Irtenbidea TOCOL funtzioarekin batera erabiltzea da.
Adibidez, barrutitik balio desberdinak (bereiztuak) ateratzea.A2:C7, formula hau da:
=UNIQUE(TOCOL(A2:C7))
Gainera, goiko formula SORT funtzioan bildu dezakezu itzulitako matrizea ordena alfabetikoan antolatzeko:
=SORT(UNIQUE(TOCOL(A2:C7)))
Nola bihurtu barrutia zutabe Excel 365 - 2010
TOCOL funtzioa onartzen ez den Excel bertsioetan, gelaxka sorta bat zutabe bihurtzeko beste modu alternatibo batzuk daude. Soluzio hauek nahiko zailak dira, baina, hala ere, funtzionatzen dute.
Barrutia errenkadaka irakurtzeko:
AURKIBIDEA( barrutia , KOTIENTUA(ERRENKARA(A1)-1, ZUTAPEAK( barrutia ))+1, MOD(ERRENKADA(A1)-1, ZUTAPEAK( barrutia ))+1)Barrutia zutabeka irakurtzeko:
AURKIBIDEA ( barrutia , MOD(ERRENKADA(A1)-1, ERRENKADAK( barrutia ))+1, KOZIENTZIA (ERRENKADA(A1)-1, ERRENKADA ( barrutia ))+1 )Gure lagin-datu multzorako, formulak hauek dira:
Barrutia ezkerretik eskuinera horizontalki eskaneatzeko :
=INDEX($A$2:$C$5, QUOTIENT(ROW(A1)-1, COLUMNS($A$2:$C$5))+1, MOD(ROW(A1)-1, COLUMNS($A$2:$C$5))+1)
Formula hau TOCOL funtzioaren baliokidea da 3. argumentua FALSE gisa ezarrita edo ezabatuta dagoena:
=TOCOL(A2:C5)
Barrutia bertikalki goitik behera eskaneatzeko :
=INDEX($A$2:$C$5, MOD(ROW(A1)-1, ROWS($A$2:$C$5))+1, QUOTIENT(ROW(A1)-1, ROWS($A$2:$C$5))+1)
Formula hau TOCOL funtzioaren parekoa da 3. argumentua TRUE gisa ezarrita:
=TOCOL(A2:C5, ,TRUE)
TOCOL ez bezala, formula alternatiboak sartu behar dira bakoitzean. emaitzak agertzea nahi duzun gelaxka. Gure kasuan, formulak E2 (errenkadaren arabera) eta G2 (zutabearen arabera) gelaxketara doaz eta, ondoren, 13. errenkadan kopiatzen dira.
Formulak behar baino errenkada gehiagotan kopiatzen badira, a#ERREF! errorea "gehiago" gelaxketan agertuko da. Hori gerta ez dadin, formulak IFERROR funtzioan habia ditzakezu honela:
=IFERROR(INDEX($A$2:$C$5, QUOTIENT(ROW(A1)-1, COLUMNS($A$2:$C$5))+1, MOD(ROW(A1)-1, COLUMNS($A$2:$C$5))+1), "")
Ohartu formulak behar bezala kopiatzeko, barrutia blokeatzen dugula gelaxka-erreferentzia absolutuak erabiliz ($ A$2:$C$5). Horren ordez, izendatutako barruti bat erabil dezakezu.
Formula hauek nola funtzionatzen duten
Behean gelaxkak errenkadaka antolatzen dituen lehenengo formularen banaketa zehatza dago:
=INDEX($A$2:$C$5, QUOTIENT(ROW(A1)-1, COLUMNS($A$2:$C$5))+1, MOD(ROW(A1)-1, COLUMNS($A$2:$C$5))+1)
Ideia INDEX funtzioa erabiltzea da gelaxka jakin baten balioa itzultzeko barrutian dituen errenkada- eta zutabe-zenbaki erlatiboetan oinarrituta.
errenkada-zenbakia konbinazio honen bidez kalkulatzen da. :
QUOTIENT(ROW(A1)-1, COLUMNS($A$2:$C$5))+1
QUOTIENT zatiketa baten osoko zatia itzultzen du.
zenbatzailea rako, ROW(A1)-1 erabiltzen duzu, eta horrek bat itzultzen du. serie-zenbakia 0tik E2-n (formula sartu den lehenengo gelaxka) E13-n 11ra (formula sartu den azken gelaxka).
Izendatzailea ZUTABE ($A) $2:$C$5)) konstantea da eta zure barrutiko zutabe kopuruaren berdina da (3 gure kasuan).
Orain, KOZIENTZIAREN emaitza lehen 3 gelaxketarako (E2:E4) egiaztatzen baduzu. , 0-ren berdina dela ikusiko duzu (zatiketaren zati osoa zero delako). 1 gehituz gero, 1 errenkada-zenbakia ematen da.
Hurrengo 3 gelaxketarako (E5:E5), KOTIENTZIAK 1 ematen du, eta +1 eragiketak 2. errenkada-zenbakia ematen du. Eta abar.
Beste era batera esanda, formularen zati honek errepikapen bat sortzen duzenbaki-sekuentzia, esaterako, 1,1,1,2,2,2,3,3,3,4,4,4,... Zenbaki bakoitza zure barrutian zutabe adina aldiz errepikatzen da.
To kalkulatu zutabe-zenbakia , MOD funtzioa erabiliz zenbaki-sekuentzia egokia eraikitzen duzu:
MOD(ROW(A1)-1, COLUMNS($A$2:$C$5))+1
Gure barrutian 3 zutabe daudenez (A2:C5), sekuentzia 1,2,3,1,2,3,...
MOD funtzioak zatiketaren ondoren hondarra itzultzen du.
E2-n, MOD(ERRENKADA(A1)-1, ZUTABEAK ($A$2:$C$5))+1)
bihurtzen da
MOD(1-1, 3)+1)
eta 1 itzultzen du.
E3-n, MOD(ERRENKADA(A2)-1, ZUTAPEAK($A$2:$C$5))+1)
MOD(2-1, 3) bihurtzen da +1)
eta 2 ematen du.
Errenkada eta zutabe zenbakiak ezarrita, INDEXek ez du arazorik behar den balioa lortzeko.
E2-n, INDEX($A$2) :$C$5, 1, 1) erreferentziako barrutiaren 1. errenkadako eta 1. zutabeko balioa itzultzen du, hau da, A2 gelaxkatik.
E3-n, INDEX($A$2:$C$5, 1) , 2) 1. errenkadako eta 2. zutabeko balioa itzultzen du, hau da, B2 gelaxkatik.
Eta abar.
Barrutia c bidez aztertzen duen bigarren formula. olumn, antzera funtzionatzen du. Ezberdintasuna da MOD erabiltzen duela errenkada-zenbakia lortzeko eta QUOTIENT zutabe-zenbakia lortzeko.
TOCOL funtzioak ez du funtzionatzen
TOCOL funtzioak errore bat ematen badu, litekeena da. arrazoi hauetako bat izan daiteke:
TOCOL ez da onartzen zure Excel-en
#IZENA lortzen duzunean? akatsa, funtzioaren izenaren idazkera zuzena da lehenengo gauzaegiaztatu. Izena zuzena bada baina akatsak jarraitzen badu, funtzioa ez dago eskuragarri Excel-en zure bertsioan. Kasu honetan, kontuan hartu TOCOL alternatiba bat erabiltzea.
Matrizea handiegia da
#NUM erroreak adierazten du matrizea ezin dela zutabe batean sartu. Kasu arrunt bat zutabe edo errenkada osoak aipatzen dituzunean gertatzen da.
Ez dago nahikoa gelaxka huts
#SPILL errore bat gertatzen denean, egiaztatu formula sartu den zutabea. nahikoa gelaxka huts ditu emaitzekin betetzeko. Gelaxkak bisualki hutsik badaude, ziurtatu ez dagoela zuriunerik eta inprimatzerik gabeko beste karaktererik. Informazio gehiago lortzeko, ikus Nola konpondu #SPILL errorea Excel-en.
Horrela erabil dezakezu TOCOL funtzioa Excel 365-en eta aurreko bertsioetako soluzio alternatiboak bi dimentsioko matrize bat zutabe bakar batean eraldatzeko. Eskerrik asko irakurtzeagatik eta datorren astean gure blogean ikustea espero dut!
Lan koadernoa
Excel TOCOL funtzioa - formula adibideak (.xlsx fitxategia)