Beschikbaar in:Alle versies (Werkt in Excel 2007, elke latere versie, Microsoft 365 en Excel voor het web)Voorbeelden vragen Excel 2021 of nieuwerCategorie:Zoeken en verwijzenIn beoordeling

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.

Moeilijkheidsgraad 2 van 5. De functie zelf is klein, maar hoe je haar invoert verschilt: in huidig Excel loopt ze over, en oudere versies vragen een geselecteerd blok en Ctrl+Shift+Enter.

Laatst bijgewerkt: 13 oktober 2026

Bekijk de uitgewerkte voorbeelden

Fragment van het werkblad: in D1 staat de formule
RijABCDEFG
1WeekUren11=TRANSPONEREN(A2:B5)=TRANSPONEREN(A2:B5)223344
21138383838424240404545
3224242
4334040
5444545
Formulecel (D1)OverloopresultaatOpmerking: D1:G2 moet leeg zijn: het resultaat loopt daar over.
=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.

Begrippen op deze pagina: overloop, bereik, cel

TRANSPONEREN(matrix)
TRANSPONEREN(matrix)
Argumenten
ArgumentSoortBetekenis
matrixVerplichtHet 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.

Fragment van het werkblad: in D1 staat de formule
RijABCDEFGH
1WeekUren11=TRANSPONEREN(A2:B5)=TRANSPONEREN(A2:B5)223344
21138383838424240404545
3224242
4334040
5444545
6
Formulecel (D1)OverloopresultaatOpmerking: D1:G2 moet leeg zijn: het resultaat loopt daar over.

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
  1. Excel leest A2:B5: 4 rijen en 2 kolommen. Het resultaat moet 2 rijen en 4 kolommen hebben.
  2. De eerste kolom van de bron, A2:A5 (1, 2, 3, 4), wordt de eerste rij van het resultaat: D1:G1.
  3. De tweede kolom, B2:B5 (38, 42, 40, 45), wordt de tweede rij: D2:G2.
  4. In Excel 2021 en Microsoft 365 typ je de formule in D1 en druk je op Enter, waarna de acht cellen D1:G2 vanzelf vullen. In Excel 2019 en ouder selecteer je eerst D1:G2, typ je de formule en druk je op Ctrl+Shift+Enter.
  5. Verander B3 van 42 in 44 en E2 wordt 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 in D1 om 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.

Fragment van het werkblad: in F1 staat de formule
RijABCDEFGHIJK
1EntiteitK1K2K3Entiteit=TRANSPONEREN(ALS(A1:D5 = "", "", A1:D5))=TRANSPONEREN(ALS(A1:D5 = ""; ""; A1:D5))NL01NL02BE01DE01
2NL01112112118118121121K1112112646438382727
3NL0264647070K211811841412929
4BE01383841414343K312112170704343
5DE0127272929
6
Formulecel (F1)OverloopresultaatOpmerking: C3 en D5 zijn met opzet leeg. F1:J4 moet leeg zijn: het resultaat loopt daar over.

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
  1. Excel rekent eerst ALS uit, over het hele blok A1:D5 met de koppen erbij. Voor elke cel vraagt Excel: is ze leeg? C3 en D5 zijn 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.
  2. 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.
  3. De tweede rij (NL01, 112, 118, 121) wordt de tweede kolom, G1:G4; de derde rij (NL02, 64, leeg, 70) wordt H1:H4, enzovoort.
  4. De twee lege teksten komen terecht waar hun bronnen heen wijzen: C3 (rij 3, kolom 3) gaat naar H3, en D5 (rij 5, kolom 4) gaat naar J4. Beide zien er leeg uit.
  5. Zonder ALS zou TRANSPONEREN een 0 zetten in H3 en J4, 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.

Fragment van het werkblad: in E1 staat de formule
RijABCDEFGHI
1Boekingsnr.PeriodeBedrag99=TRANSPONEREN(SORTEREN(UNIEK(B2:B9)))=TRANSPONEREN(SORTEREN(UNIEK(B2:B9)))101011111212
2JE-10411111€2,450.00€ 2.450,00
3JE-104299€18,200.00€ 18.200,00
4JE-10431010€760.50€ 760,50
5JE-104499€3,300.00€ 3.300,00
6JE-10451212€41,250.00€ 41.250,00
7JE-10461111€1,980.00€ 1.980,00
8JE-10471010€5,100.00€ 5.100,00
9JE-104899€12,750.00€ 12.750,00
10
Formulecel (E1)OverloopresultaatOpmerking: E1:H1 moet leeg zijn: het resultaat loopt daar over.

Formule in E1

=TRANSPONEREN(SORTEREN(UNIEK(B2:B9)))
=TRANSPONEREN(SORTEREN(UNIEK(B2:B9)))

Resultaat: 9 | 10 | 11 | 129 | 10 | 11 | 12

Stap voor stap
  1. 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.
  2. SORTEREN zet die kolom op oplopende volgorde: 9, 10, 11, 12. Het blijft een kolom van 4 rijen.
  3. TRANSPONEREN maakt van de kolom van 4 rijen een rij van 4 kolommen: 9, 10, 11, 12 in E1:H1.
  4. 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, zolang I1 leeg 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:B9 komt 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.

Fragment van het werkblad: in F2 staat de formule
RijABCDEFG
1EntiteitNL01BE01DE01Niet afgestemd
2NL01€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 )
3BE01-€12,500.00€ -12.500,00€0.00€ 0,00€8,000.00€ 8.000,00
4DE01€4,300.00€ 4.300,00-€7,850.00€ -7.850,00€0.00€ 0,00
5
Formulecel (F2)InvoerOpmerking: De rijen zijn de rapporterende entiteit, de kolommen de tegenpartij. Positief is een vordering, negatief een schuld.

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
  1. LET geeft het blok B2:D4 de naam saldi: drie rijen (NL01, BE01, DE01) van elk drie bedragen.
  2. 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).
  3. 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
  4. ABS maakt elk verschil positief en SOM telt ze op: 150 + 150 = 300.
  5. 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.
  6. 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

Veelgemaakte fouten
SymptoomOorzaakOplossing
#OVERLOPEN! in plaats van het omgezette blokDe 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 cellenIn 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 heeftHet 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 bronPlak 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.