Kazalo
Hiter način za pretvorbo območja celic v eno vrstico s pomočjo TOROW funkcijo.
Microsoft Excel 365 je uvedel več novih funkcij za izvajanje različnih manipulacij z matrikami. S funkcijo TOROW lahko v hipu izvedete pretvorbe med vrsticami. Tukaj je seznam nalog, ki jih lahko opravi ta nova funkcija:
Excelova funkcija TOROW
Funkcija TOROW v Excelu se uporablja za pretvorbo polja ali območja celic v eno vrstico.
Funkcija sprejme tri argumente, od katerih je potreben samo prvi.
TOROW(array, [ignore], [scan_by_column])Kje:
Polje (obvezno) - polje ali območje, ki ga želite pretvoriti v eno vrstico.
Ignoriraj (neobvezno) - določa, ali se bodo prazne lise in/ali napake prezrle. Lahko ima eno od teh vrednosti:
- 0 ali izpuščeno (privzeto) - ohrani vse vrednosti
- 1 - ne upoštevajte praznih mest
- 2 - ignoriranje napak
- 3 - prezrite prazne prostore in napake
Scan_by_column (neobvezno) - določa način pregledovanja polja:
- FALSE ali izpuščeno (privzeto) - vodoravno skeniranje polja po vrsticah.
- TRUE - po stolpcu navpično prebrska polje.
Nasveti:
- Če želite polje pretvoriti v en sam stolpec, uporabite funkcijo TOCOL.
- Če želite izvesti obratno pretvorbo iz vrstice v polje, uporabite funkcijo WRAPCOLS za zavijanje v stolpce ali funkcijo WRAPROWS za zavijanje polja v vrstice.
- Če želite vrstice spremeniti v stolpce, uporabite funkcijo TRANSPOSE.
Razpoložljivost TOROW
TOROW je nova funkcija, ki je podprta samo v Excelu za Microsoft 365 (za Windows in Mac) in Excelu za splet.
Osnovna formula TOROW v Excelu
Če želite izvesti preprosto transformacijo med vrsticami, uporabite formulo TOROW v njeni osnovni obliki. Pri tem morate opredeliti samo prvi argument ( polje ).
Če želite na primer dvodimenzionalno polje, sestavljeno iz 3 stolpcev in 3 vrstic, spremeniti v eno samo vrstico, je formula naslednja:
=TOROW(A3:C6)
Formulo vnesete v samo eno celico (v našem primeru A10) in ta se samodejno razlije v toliko celic, kolikor jih je potrebnih za vse rezultate. V izrazih programa Excel se izhodno območje, obdano s tanko modro obrobo, imenuje območje prelivanja.
Kako deluje ta formula:
Najprej se posredovano območje celic pretvori v dvodimenzionalno polje. Opazite stolpce, ločene z vejico, in vrstice, ločene s podpičjem:
{"Apple","Banana","Cherry";1,2,3;4,5,6;7,8,9}
Nato funkcija TOROW prebere polje od leve proti desni in ga pretvori v enodimenzionalno vodoravno polje:
{"Apple","Banana","Cherry",1,2,3,4,5,6,7,8,9}
Rezultat se prenese v celico A10, od koder se prelije v sosednjo celico na desni.
pretvori območje v vrstico, pri čemer ne upošteva praznih mest in napak
Funkcija TOROW privzeto ohrani vse vrednosti iz izvornega polja, vključno s praznimi celicami in napakami. V izpisu se namesto praznih celic pojavijo ničelne vrednosti, kar je lahko precej zmedeno.
Na naslov izključitev praznih mest , nastavite prezreti na 1:
=TOROW(A3:C5, 1)
Na naslov ignoriranje napak , nastavite prezreti argument na 2:
=TOROW(A3:C5, 2)
Če želite preskočiti oboje, prazna mesta in napake , uporabite 3 za prezreti argument:
=TOROW(A3:C5, 3)
Spodnja slika prikazuje vse tri scenarije v praksi:
branje polja vodoravno ali navpično
Pri privzetem obnašanju funkcija TOROW obdeluje polje vodoravno od leve proti desni. Če želite pregledati vrednosti po stolpcih od zgoraj navzdol, nastavite 3. argument ( scan_by_column ) na TRUE ali 1.
Na primer, če želite prebrati območje vira po vrsticah, je formula v E3 naslednja:
=TOROW(A3:C5)
Če želite pregledati območje po stolpcih, je formula v E8 naslednja:
=TOROW(A3:C5, ,TRUE)
V obeh primerih so nastale tabele enako velike, vendar so vrednosti razporejene v drugačnem vrstnem redu.
Združitev več območij v eno vrstico
Če želite združiti več nesorodnih razponov v eno vrstico, jih najprej vodoravno ali navpično zložite v eno polje s pomočjo funkcije HSTACK oziroma VSTACK, nato pa s funkcijo TOROW združeno polje pretvorite v vrstico.
Odvisno od vaše poslovne logike bo nalogo opravila ena od naslednjih formul.
Vodoravno zlaganje nizov in pretvorba po vrsticah
S prvim območjem v A3:C4 in drugim območjem v A8:C9 bo spodnja formula vodoravno zložila obe območji v eno samo polje in ga nato preoblikovala v vrstico, ki bere vrednosti od leve proti desni. Rezultat je v E3 na spodnji sliki.
=TOROW(HSTACK(A3:C4, A8:C9))
Vodoravno zlaganje nizov in pretvorba po stolpcih
Če želite zlagano polje brati navpično od zgoraj navzdol, nastavite tretji argument TOROW na TRUE, kot je prikazano v E5 na spodnji sliki:
=TOROW(HSTACK(A3:C4, A8:C9), ,TRUE)
Navpično zlaganje nizov in pretvorba po vrsticah
Če želite vsako naslednje polje dodati na dno prejšnjega polja in združeno polje brati vodoravno, je formula v E12 naslednja:
=TOROW(VSTACK(A3:C4, A8:C9))
Navpično zlaganje nizov in pretvorba po stolpcih
Za dodajanje vsakega naslednjega polja na dno prejšnjega in navpično skeniranje združenega polja je formula naslednja:
=TOROW(VSTACK(A3:C4, A8:C9), ,TRUE)
Za boljše razumevanje logike opazujte različno zaporedje vrednosti v nastalih poljih:
Izvleček edinstvenih vrednosti iz območja v vrstico
V programu Microsoft Excel 2016 je na voljo čudovita funkcija z imenom UNIQUE, s katero lahko preprosto pridobite edinstvene vrednosti iz enega stolpca ali vrstice. Vendar pa ne more obdelati matrik z več stolpci. To omejitev odpravite tako, da skupaj uporabite funkciji UNIQUE in TOROW.
Na primer, če želite iz območja A2:C7 izluščiti vse različne (različne) vrednosti in rezultate postaviti v eno vrstico, je formula naslednja:
=UNIQUE(TOROW(A2:C7), TRUE)
Ker TOROW vrne enodimenzionalno vodoravno polje, nastavimo 2. ( by_col ) argumenta UNIQUE na TRUE, da se stolpci primerjajo med seboj.
Če želite, da so rezultati urejeni po abecednem vrstnem redu, zgornjo formulo zavijte v funkcijo SORT:
=SORT(UNIQUE(TOROW(A2:C7), TRUE), , ,TRUE )
Podobno kot v primeru UNIQUE by_col argumenta SORT je prav tako nastavljen na TRUE.
TOROW alternativa za Excel 365 - 2010
V različicah programa Excel, v katerih funkcija TOROW ni na voljo, lahko območje pretvorite v eno vrstico s kombinacijo nekaj različnih funkcij, ki delujejo v starejših različicah. Te rešitve so bolj zapletene, vendar delujejo.
Za vodoravno pregledovanje območja je splošna formula:
INDEX( obseg , KOLIČNIK(STOLPEC (A1)-1, STOLPCI( obseg ))+1, MOD(STOLPEC(A1)-1, STOLPCI( obseg ))+1)Splošna formula za navpično pregledovanje območja je:
INDEX( obseg , MOD(STOLPEC(A1)-1, STOLPCI( obseg ))+1, KOLIČNIK(STOLPEC (A1)-1, STOLPCI( obseg ))+1)Za naš vzorčni nabor podatkov v A3:C5 so formule takšne:
Pregledovanje območja po vrsticah:
=INDEX($A$3:$C$5, KOLIČNIK(STOLPEC(A1)-1, STOLPCI($A$3:$C$5))+1, MOD(STOLPEC(A1)-1, STOLPCI($A$3:$C$5))+1)
Ta formula je alternativa funkciji TOROW, pri kateri je tretji argument nastavljen na FALSE ali izpuščen:
=TOROW(A3:C5)
Pregledovanje območja po stolpcih:
=INDEX($A$3:$C$5, MOD(STOLPEC(A1)-1, STOLPCI($A$3:$C$5))+1, KOLIČNIK(STOLPEC(A1)-1, STOLPCI($A$3:$C$5))+1)
Ta formula je enakovredna funkciji TOROW s tretjim argumentom, nastavljenim na TRUE:
=TOROW(A3:C5, ,TRUE)
Upoštevajte, da je treba za razliko od funkcije TOROW za dinamično polje te tradicionalne formule vnesti v vsako celico, v kateri želite prikazati rezultate. V našem primeru gre prva formula (po vrstici) v E3 in se kopira prek M3. Druga formula (po stolpcu) pristane v E8 in se povleče prek M8.
Za pravilno kopiranje formul zaklenemo območje z absolutnimi referencami ($A$3:$C$5). Tudi poimenovano območje je primerno.
Če ste formule kopirali v več celic, kot je potrebno, se bo v "dodatnih" celicah pojavila napaka #REF! Če želite to popraviti, formulo zavijte v funkcijo IFERROR, kot sledi:
=IFERROR(INDEX($A$3:$C$5, QUOTIENT(STOLPEC(A1)-1, STOLPCI($A$3:$C$5))+1, MOD(STOLPEC(A1)-1, STOLPCI($A$3:$C$5))+1), "")
Kako te formule delujejo
Spodaj je podroben razčlenitev prve formule, ki ureja vrednosti po vrsticah:
=INDEX($A$3:$C$5, KOLIČNIK(STOLPEC(A1)-1, STOLPCI($A$3:$C$5))+1, MOD(STOLPEC(A1)-1, STOLPCI($A$3:$C$5))+1)
V središču formule je funkcija INDEX, s katero dobimo vrednost celice glede na njen relativni položaj v območju.
Spletna stran številka vrstice se izračuna po tej formuli:
KOLIČNIK(STOLPEC(A1)-1, STOLPCI($A$3:$C$5))+1
Ideja je ustvariti ponavljajoče se zaporedje števil, kot je 1,1,1,1,2,2,2,3,3,3, ..., pri čemer se vsako število ponovi tolikokrat, kolikor je stolpcev v izvornem območju. In tukaj je opisano, kako to naredimo:
QUOTIENT vrne celoštevilski del deljenja.
Za števec , uporabimo COLUMN(A1)-1, ki vrne zaporedno številko od 0 v prvi celici, kjer je vnesena formula, do n (skupno število vrednosti v območju minus 1) v zadnji celici, v katero je bila vnesena formula. V tem primeru je 0 v E2 in 8 v M3.
Za imenovalec uporabimo COLUMNS($A$3:$C$5)). Ta vrne konstantno število, enako številu stolpcev v območju (v našem primeru 3).
Zato funkcija QUOTIENT v prvih treh celicah (E3:G3) vrne 0, ki ji dodamo 1, tako da je številka vrstice 1.
Za naslednje 3 celice (H3:J3) QUOTIENT vrne 1, +1 pa številko vrstice 2. In tako naprej.
Za izračun številka stolpca , s funkcijo MOD sestavite ustrezno zaporedje številk:
MOD(STOLPEC(A1)-1, STOLPCI($A$3:$C$5))+1
Ker so v našem območju trije stolpci, mora biti zaporedje videti kot: 1,2,3,1,2,3,...
Funkcija MOD vrne ostanek po deljenju.
V E3, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5))+
postane .
MOD(1-1, 3)+1)
in vrne 1.
V F3, MOD(COLUMN(B1)-1, COLUMNS($A$3:$C$5))+
postane .
MOD(2-1, 3)+1)
in vrne 2.
Ko določite številke vrstic in stolpcev, INDEX zlahka poišče vrednost v presečišču vrstic in stolpcev.
V E3 INDEX($A$3:$C$5, 1, 1) vrne vrednost iz 1. vrstice in 1. stolpca navedenega območja, tj. iz celice A3.
V F3 INDEX($A$3:$C$5, 1, 2) vrne vrednost iz 1. vrstice in 2. stolpca, tj. iz celice B3.
In tako naprej.
Druga formula, ki pregleda območje po stolpcih, deluje na podoben način. Razlika je v tem, da za izračun številke vrstice uporabimo MOD, za določitev številke stolpca pa QUOTIENT.
Funkcija TOROW ne deluje
Če funkcija TOROW povzroči napako, je to najverjetneje eden od teh razlogov:
#NAME?
Pri večini funkcij programa Excel je napaka #NAME? jasen znak, da je ime funkcije napačno zapisano. Pri funkciji TOROW lahko pomeni tudi, da funkcija ni na voljo v programu Excel. Če je vaša različica programa Excel drugačna kot 365, poskusite uporabiti alternativno funkcijo TOROW.
#NUM napaka
Napaka #NUM pomeni, da se vrnjeno polje ne prilega vrstici. To se najpogosteje zgodi, če se sklicujete na celotne stolpce in/ali vrstice namesto na manjše območje.
#SPILL napaka
V večini primerov napaka #SPILL pomeni, da v vrstici, v katero ste vnesli formulo, ni dovolj praznih celic, v katere bi lahko prelili rezultate. Če so sosednje celice vizualno prazne, se prepričajte, da v njih ni presledkov ali drugih netiskarskih znakov. Za več informacij glejte Kaj pomeni napaka #SPILL v programu Excel.
Tako v Excelu uporabite funkcijo TOROW za pretvorbo dvodimenzionalnega polja ali območja v eno vrstico. Zahvaljujem se vam za branje in upam, da se naslednji teden vidimo na našem blogu!
Praktični delovni zvezek za prenos
Excelova funkcija TOROW - primeri formul (.xlsx datoteka)