TRANSPONEREN
TRANSPOSE in Engelstalige Excel
Zet de rijen van een bereik om in kolommen en de kolommen in rijen, en blijft gekoppeld aan de bron.
Laatst bijgewerkt: 13 oktober 2026
| Rij | A | B | C | D | E | F | G |
|---|---|---|---|---|---|---|---|
| 1 | Week | Uren | 11=TRANSPONEREN(A2:B5)=TRANSPONEREN(A2:B5) | 22 | 33 | 44 | |
| 2 | 11 | 3838 | 3838 | 4242 | 4040 | 4545 | |
| 3 | 22 | 4242 | |||||
| 4 | 33 | 4040 | |||||
| 5 | 44 | 4545 |
Veeg opzij om alle kolommen te zien
=TRANSPONEREN(A2:B5)
=TRANSPONEREN(A2:B5)
Wat TRANSPONEREN doet en wanneer je het gebruikt
Wat het doet: het verwisselt de rijen en kolommen van een bereik, bijvoorbeeld een lijst met uren per week die onder elkaar staat wordt een rij naast elkaar, en het blijft gekoppeld aan de bron.
Wanneer je het gebruikt: als gegevens de verkeerde kant op staan voor je taak: een lijst die kolomkoppen moet worden, of een tijdlijn die naar beneden moet lopen in plaats van opzij. Voor een eenmalige omzetting die nooit verandert is Plak speciaal met Transponeren sneller, maar dat plakt een vaste kopie.
De twee grootste voordelen:
- Blijft gekoppeld: het resultaat volgt de bron als die verandert, terwijl Plak speciaal een vaste kopie plakt.
- Werkt binnen een formule: je kunt er SORTEREN, UNIEK of ALS omheen zetten, wat met Plak speciaal niet kan.
Hoe Excel de functie berekent
Excel leest de bron en noteert de hoogte en de breedte. Daarna bouwt Excel een nieuw blok waarin die twee zijn verwisseld: de waarde op rij r en kolom c van de bron komt op rij c en kolom r van het resultaat.
Excel 2021 en Microsoft 365: je typt de formule in de cel linksboven van het doelgebied en drukt op Enter; het resultaat loopt over in de cellen die het nodig heeft, en die moeten allemaal leeg zijn, anders krijg je #OVERLOPEN!.
Excel 2019 en ouder: je selecteert eerst het hele doelblok (even groot, met rijen en kolommen verwisseld), typt de formule en bevestigt met Ctrl+Shift+Enter.
Let op: Een lege cel in de bron komt terug als 0, waardoor een ontbrekend cijfer op een echte nul lijkt, in elke Excel-versie.
Denkmodel
Pak een vel papier en klap het om over zijn diagonaal: de bovenste rij wordt de linkerkolom, en de cel in de linkerbovenhoek blijft op zijn plek.
TRANSPONEREN(matrix)
TRANSPONEREN(matrix)
| Argument | Soort | Betekenis |
|---|---|---|
matrix | Verplicht | Het bereik of de matrix waarvan rijen en kolommen worden verwisseld. |
Geeft terug:Een blok waarin de rijen en kolommen van matrix zijn verwisseld
Formules gebruiken komma's (,) tussen de argumenten, zoals in de Engelse Excel. Formules gebruiken puntkomma's (;) tussen de argumenten, zoals in de Nederlandse Excel. Formules gebruiken puntkomma's (;) tussen de argumenten, zoals in de Nederlandse Excel; de Engelse Excel gebruikt komma's (,).
Uitgewerkte voorbeelden
Beginner
Een lijst met uren per week omzetten in een tijdlijn
De urenexport van een opdracht toont de weken onder elkaar, met de geboekte uren in de kolom ernaast. Het planningsblad heeft de weken naast elkaar nodig, met de uren eronder. Je wilt dat het bijwerkt als de export verandert.
| Rij | A | B | C | D | E | F | G | H |
|---|---|---|---|---|---|---|---|---|
| 1 | Week | Uren | 11=TRANSPONEREN(A2:B5)=TRANSPONEREN(A2:B5) | 22 | 33 | 44 | ||
| 2 | 11 | 3838 | 3838 | 4242 | 4040 | 4545 | ||
| 3 | 22 | 4242 | ||||||
| 4 | 33 | 4040 | ||||||
| 5 | 44 | 4545 | ||||||
| 6 |
Veeg opzij om alle kolommen te zien
Formule in D1
=TRANSPONEREN(A2:B5)
=TRANSPONEREN(A2:B5)
Resultaat: 1 | 2 | 3 | 4 / 38 | 42 | 40 | 451 | 2 | 3 | 4 / 38 | 42 | 40 | 45
Stap voor stap
- Excel leest
A2:B5: 4 rijen en 2 kolommen. Het resultaat moet 2 rijen en 4 kolommen hebben. - De eerste kolom van de bron,
A2:A5(1, 2, 3, 4), wordt de eerste rij van het resultaat:D1:G1. - De tweede kolom,
B2:B5(38, 42, 40, 45), wordt de tweede rij:D2:G2. - In Excel 2021 en Microsoft 365 typ je de formule in
D1en druk je op Enter, waarna de acht cellenD1:G2vanzelf vullen. In Excel 2019 en ouder selecteer je eerstD1:G2, typ je de formule en druk je op Ctrl+Shift+Enter. - Verander
B3van 42 in 44 enE2wordt ook 44, omdat het resultaat een formule is en geen kopie.
Let op: Staat er al een waarde in een van de cellen D1:G2, dan toont de cel #OVERLOPEN! en wordt er niets getransponeerd. Maak de cellen leeg en het resultaat verschijnt.
Meer over dit voorbeeld: waarom het werkt, nog 1 valkuil, 1 variant
Waarom het werkt
De waarde op rij r en kolom c van de bron komt op rij c en kolom r van het resultaat. Daarmee gaat de vorm van 4 bij 2 naar 2 bij 4, en blijft elk uur onder zijn eigen week staan. Alleen D1 bevat de formule; de andere zeven cellen tonen delen van het resultaat.
Meer om op te letten
- Je kunt niet één cel van het resultaat wijzigen of verwijderen, zoals
E2. Pas de bron aan, of verwijder de formule inD1om het hele blok weg te halen.
Varianten
=TRANSPONEREN(B2:B5)
=TRANSPONEREN(B2:B5)
Alleen de uren, als één rij. Gebruik dit als de weeknummers al boven staan.
Halfgevorderd
Een tabel met personeelsaantallen omzetten en lege cellen leeg houden
De groepsrapportage verzamelt per kwartaal het aantal medewerkers van vier entiteiten, met de entiteiten onder elkaar. Het dashboard heeft de entiteiten naast elkaar nodig. Twee entiteiten hebben een kwartaal niet gerapporteerd, dus die cellen zijn leeg, en ze moeten leeg blijven: een aantal van 0 zou suggereren dat de entiteit is opgeheven.
| Rij | A | B | C | D | E | F | G | H | I | J | K |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Entiteit | K1 | K2 | K3 | Entiteit=TRANSPONEREN(ALS(A1:D5 = "", "", A1:D5))=TRANSPONEREN(ALS(A1:D5 = ""; ""; A1:D5)) | NL01 | NL02 | BE01 | DE01 | ||
| 2 | NL01 | 112112 | 118118 | 121121 | K1 | 112112 | 6464 | 3838 | 2727 | ||
| 3 | NL02 | 6464 | 7070 | K2 | 118118 | 4141 | 2929 | ||||
| 4 | BE01 | 3838 | 4141 | 4343 | K3 | 121121 | 7070 | 4343 | |||
| 5 | DE01 | 2727 | 2929 | ||||||||
| 6 |
Veeg opzij om alle kolommen te zien
Formule in F1
=TRANSPONEREN(ALS(A1:D5 = "","", A1:D5))
=TRANSPONEREN(ALS(A1:D5 = "";""; A1:D5))
Resultaat: Entiteit | NL01 | NL02 | BE01 | DE01 / K1 | 112 | 64 | 38 | 27 / K2 | 118 | | 41 | 29 / K3 | 121 | 70 | 43 | Entiteit | NL01 | NL02 | BE01 | DE01 / K1 | 112 | 64 | 38 | 27 / K2 | 118 | | 41 | 29 / K3 | 121 | 70 | 43 |
Stap voor stap
- Excel rekent eerst ALS uit, over het hele blok
A1:D5met de koppen erbij. Voor elke cel vraagt Excel: is ze leeg?C3enD5zijn dat, dus die worden een lege tekst ""; elke andere cel houdt haar eigen waarde. Het resultaat is een blok van dezelfde grootte, 5 rijen bij 4 kolommen. - TRANSPONEREN maakt van dat blok 4 rijen bij 5 kolommen. De eerste rij van het blok (Entiteit, K1, K2, K3) wordt de eerste kolom,
F1:F4. - De tweede rij (NL01, 112, 118, 121) wordt de tweede kolom,
G1:G4; de derde rij (NL02, 64, leeg, 70) wordtH1:H4, enzovoort. - De twee lege teksten komen terecht waar hun bronnen heen wijzen:
C3(rij 3, kolom 3) gaat naarH3, enD5(rij 5, kolom 4) gaat naarJ4. Beide zien er leeg uit. - Zonder ALS zou TRANSPONEREN een 0 zetten in
H3enJ4, en zou het dashboard melden dat NL02 in K2 geen personeel had.
Let op: Een lege tekst is geen lege cel. ISLEEG zegt ONWAAR, en rekenen zoals H3 + 1 geeft #WAARDE!. SOM en GEMIDDELDE slaan haar over, en dat is meestal wat je wilt.
Meer over dit voorbeeld: waarom het werkt, nog 1 valkuil, 1 variant
Waarom het werkt
TRANSPONEREN neemt over wat het krijgt, en een echt lege cel komt binnen als 0. ALS vervangt de lege cel door een lege tekst voordat TRANSPONEREN haar ziet, en een lege tekst gaat door als lege tekst. De ALS werkt op het hele blok tegelijk, dus de oplossing geldt voor elke tabelgrootte.
Meer om op te letten
- In Excel 2019 en ouder vraagt de ALS binnen TRANSPONEREN ook om het geselecteerde blok en Ctrl+Shift+Enter. Zonder die twee krijg je één enkele waarde.
Varianten
=TRANSPONEREN(A1:D5)
=TRANSPONEREN(A1:D5)
De gewone omzetting. Lege cellen verschijnen als 0, en dat is prima als 0 de waarheid is.
GevorderdExcel 2021 of nieuwer (Dit voorbeeld vereist Excel 2021 of nieuwer)
Een gesorteerde periodekop bouwen uit de boekingen zelf
Uit het journaalpostenbestand wil je een overzicht met een kolom per boekingsperiode. De perioden in het bestand komen herhaald en ongesorteerd voor. In plaats van de kopjes te typen, wil je één rij met elke periode één keer, op volgorde, die vanzelf groeit als er een nieuwe periode in de gegevens verschijnt.
| Rij | A | B | C | D | E | F | G | H | I |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Boekingsnr. | Periode | Bedrag | 99=TRANSPONEREN(SORTEREN(UNIEK(B2:B9)))=TRANSPONEREN(SORTEREN(UNIEK(B2:B9))) | 1010 | 1111 | 1212 | ||
| 2 | JE-1041 | 1111 | €2,450.00€ 2.450,00 | ||||||
| 3 | JE-1042 | 99 | €18,200.00€ 18.200,00 | ||||||
| 4 | JE-1043 | 1010 | €760.50€ 760,50 | ||||||
| 5 | JE-1044 | 99 | €3,300.00€ 3.300,00 | ||||||
| 6 | JE-1045 | 1212 | €41,250.00€ 41.250,00 | ||||||
| 7 | JE-1046 | 1111 | €1,980.00€ 1.980,00 | ||||||
| 8 | JE-1047 | 1010 | €5,100.00€ 5.100,00 | ||||||
| 9 | JE-1048 | 99 | €12,750.00€ 12.750,00 | ||||||
| 10 |
Veeg opzij om alle kolommen te zien
Formule in E1
=TRANSPONEREN(SORTEREN(UNIEK(B2:B9)))
=TRANSPONEREN(SORTEREN(UNIEK(B2:B9)))
Resultaat: 9 | 10 | 11 | 129 | 10 | 11 | 12
Stap voor stap
- Excel rekent van binnen naar buiten. UNIEK leest
B2:B9(11, 9, 10, 9, 12, 11, 10, 9) en houdt elke waarde één keer, in volgorde van eerste voorkomen: 11, 9, 10, 12. Dat is een kolom van 4 rijen. - SORTEREN zet die kolom op oplopende volgorde: 9, 10, 11, 12. Het blijft een kolom van 4 rijen.
- TRANSPONEREN maakt van de kolom van 4 rijen een rij van 4 kolommen: 9, 10, 11, 12 in
E1:H1. - Omdat elke stap een formule is, volgt de rij de gegevens. Voeg je in het bestand een boeking voor periode 13 toe, dan groeit de rij naar
I1, zolangI1leeg is. Is dat niet zo, dan toont de cel #OVERLOPEN!.
Let op: Staan de perioden als tekst, zoals P9, P10, P11 en P12, dan sorteert SORTEREN ze op tekstvolgorde: P10, P11, P12, P9. Er verschijnt geen foutmelding, en de kopregel klopt niet. Sla perioden op als getallen, of schrijf ze met een voorloopnul (P09).
Meer over dit voorbeeld: waarom het werkt, nog 1 valkuil, 1 variant
Waarom het werkt
UNIEK en SORTEREN geven allebei een kolom, omdat de bron een kolom is. TRANSPONEREN is de laatste stap omdat het alleen de vorm verandert, nooit de volgorde of de inhoud. Zet je het eerst, dan krijgt UNIEK één enkele rij, vergelijkt standaard hele rijen en geeft die rij ongewijzigd terug, dubbele waarden inclusief.
Meer om op te letten
- Een lege cel in
B2:B9komt uit UNIEK terug als 0, dus de kopregel krijgt een periode 0. Filter lege cellen weg vóór UNIEK als het bestand ze kan bevatten.
Varianten
=NAAR.RIJ(SORTEREN(UNIEK(B2:B9)))
=NAAR.RIJ(SORTEREN(UNIEK(B2:B9)))
NAAR.RIJ geeft dezelfde rij en is korter, maar vraagt Excel 2024 of Microsoft 365. TRANSPONEREN werkt ook in Excel 2021.
ExpertExcel 2021 of nieuwer (Dit voorbeeld vereist Excel 2021 of nieuwer)
Intercompanysaldi afstemmen op hun spiegelbeeld
Drie groepsentiteiten rapporteren elk wat ze te vorderen (positief) of te betalen (negatief) hebben van elke andere entiteit. Boeken beide kanten dezelfde transactie, dan is het saldo dat NL01 voor BE01 meldt precies het tegenovergestelde van het saldo dat BE01 voor NL01 meldt. Je wilt één cel met het totale niet-afgestemde bedrag, zodat de eliminatie kan doorgaan zodra die 0 toont.
| Rij | A | B | C | D | E | F | G |
|---|---|---|---|---|---|---|---|
| 1 | Entiteit | NL01 | BE01 | DE01 | Niet afgestemd | ||
| 2 | NL01 | €0.00€ 0,00 | €12,500.00€ 12.500,00 | -€4,300.00€ -4.300,00 | €150.00€ 150,00=LET( saldi, B2:D4, spiegel, TRANSPONEREN(saldi), afwijking, saldi + spiegel, SOM(ABS(afwijking)) / 2 )=LET( saldi; B2:D4; spiegel; TRANSPONEREN(saldi); afwijking; saldi + spiegel; SOM(ABS(afwijking)) / 2 ) | ||
| 3 | BE01 | -€12,500.00€ -12.500,00 | €0.00€ 0,00 | €8,000.00€ 8.000,00 | |||
| 4 | DE01 | €4,300.00€ 4.300,00 | -€7,850.00€ -7.850,00 | €0.00€ 0,00 | |||
| 5 |
Veeg opzij om alle kolommen te zien
Formule in F2
=LET( saldi,B2:D4, spiegel, TRANSPONEREN(saldi), afwijking, saldi + spiegel, SOM(ABS(afwijking)) / 2 )
=LET( saldi;B2:D4; spiegel; TRANSPONEREN(saldi); afwijking; saldi + spiegel; SOM(ABS(afwijking)) / 2 )
Resultaat: €150.00€ 150,00
Stap voor stap
- LET geeft het blok
B2:D4de naam saldi: drie rijen (NL01, BE01, DE01) van elk drie bedragen. - spiegel is TRANSPONEREN(saldi). Rijen en kolommen worden verwisseld, dus het bedrag dat BE01 voor NL01 meldt (-12,50012.500) staat nu op de plek van het bedrag dat NL01 voor BE01 meldt (12,50012.500).
afwijking telt de twee blokken cel voor cel op:
- rij 1: 0 + 0, 12,50012.500 + (-12,50012.500), -4,3004.300 + 4,3004.300 geeft 0, 0, 0
- rij 2: -12,50012.500 + 12,50012.500, 0 + 0, 8,0008.000 + (-7,8507.850) geeft 0, 0, 150
- rij 3: 4,3004.300 + (-4,3004.300), -7,8507.850 + 8,0008.000, 0 + 0 geeft 0, 150, 0
- ABS maakt elk verschil positief en SOM telt ze op: 150 + 150 = 300.
- Elk verschil komt twee keer voor, een keer aan elke kant van de diagonaal, dus de formule deelt door 2: 300 / 2 = 150. Het verschil zit tussen BE01 en DE01.
- Verander het bedrag van DE01 voor BE01 van -7,8507.850 in -8,0008.000 en het resultaat wordt 0.
Let op: De tekenfout: aftrekken in plaats van optellen. Met vorderingen positief en schulden negatief geeft saldi - spiegel 25,00025.000 voor het paar dat wel klopt, en lijkt alles fout. Trek alleen af als beide kanten positieve bedragen melden.
Meer over dit voorbeeld: waarom het werkt, nog 2 valkuilen, 2 varianten
Waarom het werkt
Het spiegelbeeld van een matrix legt elk paar meldingen op elkaar, dus optellen toetst het paar in één stap. Dat werkt alleen bij een vierkant blok met dezelfde entiteiten in dezelfde volgorde in de rijen en de kolommen. Heb je een lange lijst intercompanyregels in plaats van een matrix, controleer dan elk paar met SOMMEN.ALS: dat vertelt je ook welk paar afwijkt, en heeft de symmetrie niet nodig.
Meer om op te letten
- Staan de entiteiten in de rijen in een andere volgorde dan in de kolommen, dan is het blok nog steeds vierkant, dus er verschijnt geen foutmelding, maar de formule vergelijkt de verkeerde paren. Controleer of de kolomkoppen hetzelfde luiden als de eerste kolom.
- Een blok dat niet vierkant is, zoals 3 rijen bij 4 kolommen, kan niet bij zijn transpositie (4 bij 3) worden opgeteld: de posities die niet overlappen geven #N/B, en de formule geeft #N/B.
Varianten
=B2:D4 + TRANSPONEREN(B2:D4)
=B2:D4 + TRANSPONEREN(B2:D4)
Het verschilblok zelf, 3 bij 3, dat vanuit de cel overloopt. Gebruik dit om te zien welk paar afwijkt voordat je optelt.
=SOM(ABS(B2:D4 + TRANSPONEREN(B2:D4))) / 2
=SOM(ABS(B2:D4 + TRANSPONEREN(B2:D4))) / 2
Zonder LET. Selecteer in Excel 2019 en ouder de ene resultaatcel en bevestig met Ctrl+Shift+Enter, omdat de berekening met hele blokken werkt.
Veelgemaakte fouten
| Symptoom | Oorzaak | Oplossing |
|---|---|---|
| #OVERLOPEN! in plaats van het omgezette blok | De cel toont #OVERLOPEN! omdat er iets staat in de cellen waar het resultaat heen moet, of omdat het resultaat zijn eigen bron zou overlappen. | Maak de doelcellen leeg, of verplaats de formule naar een leeg gebied met ruimte voor het verwisselde blok. |
| Maar één waarde, of #N/B in extra cellen | In Excel 2019 of ouder staat de formule in één cel en bevestig je met Enter, waardoor er maar één waarde verschijnt. Of het geselecteerde blok is te groot, en de overtollige cellen tonen #N/B. | Selecteer eerst een blok van precies het verwisselde formaat, typ de formule en bevestig met Ctrl+Shift+Enter. |
| Nullen waar de bron lege cellen heeft | Het getransponeerde blok toont 0 waar de bron gaten heeft. | Toets op lege cellen in de functie zelf: TRANSPONEREN(ALS(bereik = "", "", bereik)). |
| De geplakte kopie komt niet meer overeen met de bron | Plak speciaal met Transponeren wordt gebruikt voor gegevens die nog veranderen. De geplakte kopie staat vast en komt niet meer overeen met de bron. | Gebruik TRANSPONEREN als formule wanneer het resultaat de bron moet volgen. |