TEKST.NA
TEXTAFTER in Engelstalige Excel
Knipt een tekst bij een scheidingsteken en geeft alles erna terug, desgewenst na het n-de scheidingsteken of geteld vanaf het einde.
Laatst bijgewerkt: 13 oktober 2026
| Rij | A | B | C |
|---|---|---|---|
| 1 | Grootboekrekening | ||
| 2 | 1300 Debiteuren | Debiteuren=TEKST.NA(A2, " ")=TEKST.NA(A2; " ") | |
| 3 | 1600 Crediteuren | ||
| 4 | 1800 Te betalen btw | ||
| 5 | 4500 Huisvestingskosten |
Veeg opzij om alle kolommen te zien
Resultaat: Debiteuren
=TEKST.NA(A2," ")
=TEKST.NA(A2;" ")
Wat TEKST.NA doet en wanneer je het gebruikt
Wat het doet: het geeft het deel van een tekst dat na een scheidingsteken komt, bijvoorbeeld de rekeningnaam die achter het rekeningnummer staat in een saldibalanslabel.
Wanneer je het gebruikt: als één cel meerdere gegevens in een vast patroon bevat, zoals een rekeningnummer met naam, een bestandspad of een bankomschrijving met een referentie. Het vervangt combinaties van DEEL, VIND.ALLES en LENGTE: jij noemt het scheidingsteken en Excel telt zelf. Samen met TEKST.VOOR haal je een middenstuk eruit.
De twee grootste voordelen:
- Niet zelf tellen: je noemt het scheidingsteken, dus VIND.ALLES, LENGTE en min één zijn niet nodig.
- Voorkomen en terugvaloptie: een negatieve
instance_numtelt vanaf het einde, en metif_not_foundtoon je je eigen melding in plaats van #N/B.
Hoe Excel de functie berekent
Excel loopt de argumenten in deze volgorde langs:
- het kijkt eerst naar het volgnummer van het scheidingsteken, 1 als je dat weglaat
- het zoekt in tekst van links naar rechts naar het scheidingsteken, of van rechts naar links als het getal negatief is, tot de gevraagde keer is gevonden
- alles achter die plek is het resultaat, ook als er verderop nog meer scheidingstekens in de tekst staan
- wordt het scheidingsteken niet gevonden, dan komt de tekst terug die je voor die situatie opgaf, of #N/B als je die hebt weggelaten; staat het vijfde argument op 1, dan fungeert het einde van de tekst (of, bij tellen vanaf rechts, het begin) als het ontbrekende scheidingsteken
Is tekst een bereik, dan gebeurt hetzelfde voor elke cel en lopen de antwoorden over.
Let op: Met een 1 als vijfde argument geeft TEKST.NA lege tekst als het scheidingsteken ontbreekt, omdat het einde van de tekst dan als scheidingsteken fungeert. Gebruik het zesde argument om een melding te tonen (alleen TEKST.VOOR geeft dan de hele tekst terug).
Denkmodel
Een schaar met een teller: jij zegt welke knip je wilt, de schaar knipt daar, en jij houdt het rechterstuk.
Begrippen op deze pagina: celverwijzing, overloop, argument, bereik, cel
TEKST.NA(tekst,scheidingsteken, [instance_num], [match_mode], [match_end], [if_not_found])
TEKST.NA(tekst;scheidingsteken; [instance_num]; [match_mode]; [match_end]; [if_not_found])
| Argument | Soort | Betekenis | Standaard |
|---|---|---|---|
tekst | Verplicht | De tekst waarin je zoekt. | |
scheidingsteken | Verplicht | Het teken of de tekst waar wordt geknipt. | |
instance_num | Optioneel | Welke keer het scheidingsteken voorkomt; negatief telt vanaf het einde. | 1 |
match_mode | Optioneel | 0 let op hoofdletters (standaard), 1 negeert ze. | 0 |
match_end | Optioneel | 1 behandelt het einde van de tekst als scheidingsteken. | 0 |
if_not_found | Optioneel | Wat je terugkrijgt als er geen scheidingsteken is; standaard #N/B. |
Geeft terug:De tekst na het gekozen scheidingsteken, of de tekst die je voor die situatie opgeeft (standaard #N/B) als het scheidingsteken niet voorkomt
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
De rekeningnaam uit een saldibalanslabel halen
De cliënt stuurt de saldibalans van Veldhuis Installatie BV waarin het rekeningnummer en de rekeningnaam in één cel staan, zoals 1300 Debiteuren. Voor je eigen rekeningschema heb je de naam apart nodig. Je pakt het deel na de eerste spatie.
| Rij | A | B | C | D |
|---|---|---|---|---|
| 1 | Grootboekrekening | |||
| 2 | 1300 Debiteuren | Debiteuren=TEKST.NA(A2, " ")=TEKST.NA(A2; " ") | ||
| 3 | 1600 Crediteuren | |||
| 4 | 1800 Te betalen btw | |||
| 5 | 4500 Huisvestingskosten | |||
| 6 |
Veeg opzij om alle kolommen te zien
Formule in C2
=TEKST.NA(A2," ")
=TEKST.NA(A2;" ")
Resultaat: Debiteuren
Stap voor stap
- In
A2staat de tekst1300 Debiteuren, 15 tekens. Het scheidingsteken is één spatie en het volgnummer is weggelaten, dus 1. - Van links naar rechts passeert Excel 1, 3, 0, 0 (teken 1 tot en met 4) en vindt de eerste spatie op positie 5.
- Alles achter positie 5 is het resultaat: teken 6 tot en met 15, dat is
Debiteuren(10 tekens). - Kopieer de formule naar beneden. In
C4geeft het label1800 Te betalen btwde uitkomstTe betalen btw: alleen de eerste spatie telt, dus de twee latere spaties blijven in het resultaat staan.
Let op: Een label zonder spatie, zoals 1100Bank, geeft #N/B. Een label met een spatie vooraan knipt op positie 1 en geeft het hele label terug.
Meer over dit voorbeeld: waarom het werkt, 2 varianten
Waarom het werkt
De functie knipt op één plek: de keer die je vraagt, standaard de eerste. Alles rechts van die knip blijft staan, wat erin zit ook is, dus namen met spaties komen heel terug.
Varianten
=TEKST.VOOR(A2," ")
=TEKST.VOOR(A2;" ")
De omgekeerde keuze: het rekeningnummer, 1300, in plaats van de naam.
=DEEL(A2,VIND.ALLES(" ", A2) + 1, 100)
=DEEL(A2;VIND.ALLES(" "; A2) + 1; 100)
De opbouw voor Excel 2021 en ouder, waar TEKST.NA niet bestaat: VIND.ALLES zoekt de spatie, DEEL pakt de rest.
Halfgevorderd
Bestandsnaam na de laatste schuine streep, met een melding voor losse bestanden
Sanne de Vries volgt de saldobevestigingen van Veldhuis Installatie BV op. De lijst met ingescande antwoorden bevat volledige paden van verschillende diepte. Ze wil de bestandsnaam, het deel na de laatste schuine streep. Eén antwoord is zonder map opgeslagen, en dat wil ze gemarkeerd zien in plaats van een foutwaarde.
| Rij | A | B | C | D |
|---|---|---|---|---|
| 1 | Opgeslagen pad | |||
| 2 | Debiteuren/2025/Kaya Design BV.pdf | Kaya Design BV.pdf=TEKST.NA(A2:A6, "/", -1, 0, 0, "Niet in een map")=TEKST.NA(A2:A6; "/"; -1; 0; 0; "Niet in een map") | ||
| 3 | Debiteuren/2025/Molenaar Bouw BV.pdf | Molenaar Bouw BV.pdf | ||
| 4 | Mulder Horeca BV.pdf | Niet in een map | ||
| 5 | Crediteuren/Smits Bouw BV.pdf | Smits Bouw BV.pdf | ||
| 6 | Debiteuren/2025/Van Dijk Transport BV.pdf | Van Dijk Transport BV.pdf | ||
| 7 |
Veeg opzij om alle kolommen te zien
Formule in C2
=TEKST.NA(A2:A6,"/", -1, 0, 0, "Niet in een map")
=TEKST.NA(A2:A6;"/"; -1; 0; 0; "Niet in een map")
Resultaat: Kaya Design BV.pdf / Molenaar Bouw BV.pdf / Niet in een map / Smits Bouw BV.pdf / Van Dijk Transport BV.pdfKaya Design BV.pdf / Molenaar Bouw BV.pdf / Niet in een map / Smits Bouw BV.pdf / Van Dijk Transport BV.pdf
Stap voor stap
- Het argument tekst is het hele bereik
A2:A6, dus Excel herhaalt de knip voor elk van de 5 paden. Het volgnummer is -1: tel de schuine strepen vanaf rechts en neem de eerste die je vindt. A2isDebiteuren/2025/Kaya Design BV.pdf. De schuine strepen staan op positie 11 (na Debiteuren, 10 tekens) en 16 (na 2025). Van rechts is de eerste de streep op 16, dus het resultaat isKaya Design BV.pdf.A3geeft op dezelfde manierMolenaar Bouw BV.pdf.A5,Crediteuren/Smits Bouw BV.pdf, heeft één streep op positie 12 en geeftSmits Bouw BV.pdf.A6geeftVan Dijk Transport BV.pdf.A4,Mulder Horeca BV.pdf, heeft helemaal geen schuine streep. Zonder het zesde argument zou deze rij #N/B zijn; met het zesde argument staat erNiet in een map. De argumenten 0 en 0 daartussen zijn de standaardwaarden van het vierde en het vijfde argument, alleen ingevuld om de zesde plek te bereiken.- Er komen vijf antwoorden terug, dus het resultaat loopt over van
C2totC6.
Let op: Paden uit Windows gebruiken een backslash. Is het scheidingsteken een gewone schuine streep terwijl de paden backslashes bevatten, dan staat in elke rij Niet in een map, wat op een gegevensprobleem lijkt in plaats van op een verkeerd scheidingsteken.
Meer over dit voorbeeld: waarom het werkt, 1 variant
Waarom het werkt
Met een negatief volgnummer maakt het aantal mapniveaus niet uit: of een pad één streep heeft of vijf, de laatste is altijd de knip. Het zesde argument maakt van een ontbrekend scheidingsteken geen fout die een kolom stillegt, maar een label waarop je kunt filteren.
Varianten
=TEKST.NA(A2:A6,"/", -1, 0, 1)
=TEKST.NA(A2:A6;"/"; -1; 0; 1)
Met een 1 als vijfde argument en een negatief volgnummer fungeert het begin van de tekst als scheidingsteken, dus een los bestand geeft zijn eigen naam terug in plaats van een melding.
Gevorderd
De klantnaam uit het midden van een boekingsomschrijving
In de XAF-auditfile van Veldhuis Installatie BV bestaat de omschrijving van elke verkoopregel uit factuurnummer, klantnaam en meestal een relatiecode, gescheiden door een verticale streep met spaties eromheen. Om de regels met de ouderdomsanalyse te vergelijken heb je alleen de klantnaam nodig. Bij één regel ontbreekt de relatiecode nog.
| Rij | A | B | C | D |
|---|---|---|---|---|
| 1 | Omschrijving | |||
| 2 | 25-1101 | Kaya Design BV | D1001 | Kaya Design BV=TEKST.VOOR(TEKST.NA(A2:A6, " | "), " | ", 1, 0, 1)=TEKST.VOOR(TEKST.NA(A2:A6; " | "); " | "; 1; 0; 1) | ||
| 3 | 25-1102 | Molenaar Bouw BV | D1002 | Molenaar Bouw BV | ||
| 4 | 25-1103 | Van Dijk Transport BV | Van Dijk Transport BV | ||
| 5 | 25-1104 | Hendriks Metaal BV | D1004 | Hendriks Metaal BV | ||
| 6 | 25-1105 | Mulder Horeca BV | D1005 | Mulder Horeca BV | ||
| 7 |
Veeg opzij om alle kolommen te zien
Formule in C2
=TEKST.VOOR(TEKST.NA(A2:A6," | "), " | ", 1, 0, 1)
=TEKST.VOOR(TEKST.NA(A2:A6;" | "); " | "; 1; 0; 1)
Resultaat: Kaya Design BV / Molenaar Bouw BV / Van Dijk Transport BV / Hendriks Metaal BV / Mulder Horeca BVKaya Design BV / Molenaar Bouw BV / Van Dijk Transport BV / Hendriks Metaal BV / Mulder Horeca BV
Stap voor stap
- Excel rekent eerst de binnenste functie uit: TEKST.NA(A2:A6; " | ") knipt elke omschrijving bij de eerste streep en houdt over wat erna komt.
Dat levert per rij op:
- Kaya Design BV | D1001
- Molenaar Bouw BV | D1002
- Van Dijk Transport BV
- Hendriks Metaal BV | D1004
- Mulder Horeca BV | D1005
De factuurnummers zijn weg.
- De buitenste TEKST.VOOR knipt elk van deze bij de eerste streep en houdt over wat ervoor staat: Kaya Design BV, Molenaar Bouw BV, Hendriks Metaal BV en Mulder Horeca BV. De relatiecodes zijn weg.
- De derde rij, Van Dijk Transport BV, bevat geen tweede streep. De argumenten 1, 0, 1 zijn volgnummer 1, hoofdlettergevoelig (0) en 1 voor het einde van de tekst: dat telt als scheidingsteken, dus de hele naam komt terug. Zonder die laatste 1 was deze rij #N/B.
- Er komen vijf namen terug, dus het resultaat loopt over van
C2totC6.
Let op: Typ je het scheidingsteken als "|" zonder de spaties, dan komt elke naam terug met een spatie voor en achter. De lijst ziet er goed uit, maar een X.ZOEKEN in de ouderdomsanalyse vindt voor geen enkele klant iets.
Meer over dit voorbeeld: waarom het werkt, nog 1 valkuil, 1 variant
Waarom het werkt
Elke functie verwijdert één kant van de tekst: TEKST.NA laat het linkerdeel vallen, TEKST.VOOR het rechterdeel, en wat overblijft is het midden. Omdat het binnenste resultaat zelf een matrix is, werkt de buitenste functie op alle rijen tegelijk.
Meer om op te letten
- Zet je ALS.FOUT rond de formule om #N/B te verbergen, dan verdwijnen ook regels waarvan de omschrijving een heel andere opbouw heeft. Gebruik het vijfde argument voor de bekende uitzondering en laat onverwachte fouten zichtbaar.
Varianten
=TEKST.VOOR(A2:A6," | ", 2, 0, 1)
=TEKST.VOOR(A2:A6;" | "; 2; 0; 1)
Stop voor de tweede streep: dit geeft het factuurnummer samen met de naam, bijvoorbeeld 25-1101 | Kaya Design BV.
Expert
Factuurnummers uit vrije bankomschrijvingen halen
Om bankontvangsten van Veldhuis Installatie BV te koppelen aan de debiteurenadministratie heb je het factuurnummer nodig uit de vrije tekst op het bankafschrift. Het nummer staat achter het woord factuur, geschreven als factuur, Factuur of FACTUUR, en wordt gevolgd door een naam of door niets. Regels zonder dat woord, zoals salarissen, moeten een label krijgen in plaats van een foutwaarde. De formule moet leesbaar zijn voor de beoordelaar.
| Rij | A | B | C | D | E |
|---|---|---|---|---|---|
| 1 | Bankomschrijving | Bedrag | |||
| 2 | Betaling factuur 25-1101 Kaya Design BV | €6,050.00€ 6.050,00 | 25-1101=LET( regels, A2:A7, erna, TEKST.NA(regels, "factuur ", 1, 1, 0, ""), ALS(erna = "", "Geen factuur", TEKST.VOOR(erna, " ", 1, 0, 1)) )=LET( regels; A2:A7; erna; TEKST.NA(regels; "factuur "; 1; 1; 0; ""); ALS(erna = ""; "Geen factuur"; TEKST.VOOR(erna; " "; 1; 0; 1)) ) | ||
| 3 | FACTUUR 25-1104 Hendriks Metaal | €3,025.00€ 3.025,00 | 25-1104 | ||
| 4 | Salaris december | €41,250.00€ 41.250,00 | Geen factuur | ||
| 5 | Creditnota na factuur 25-1103 | €1,210.00€ 1.210,00 | 25-1103 | ||
| 6 | Overboeking spaarrekening | €25,000.00€ 25.000,00 | Geen factuur | ||
| 7 | Ontvangen factuur 25-1106 Smits Bouw BV | €9,680.00€ 9.680,00 | 25-1106 | ||
| 8 |
Veeg opzij om alle kolommen te zien
Formule in D2
=LET( regels,A2:A7, erna, TEKST.NA(regels, "factuur ", 1, 1, 0, ""), ALS(erna = "", "Geen factuur", TEKST.VOOR(erna, " ", 1, 0, 1)) )
=LET( regels;A2:A7; erna; TEKST.NA(regels; "factuur "; 1; 1; 0; ""); ALS(erna = ""; "Geen factuur"; TEKST.VOOR(erna; " "; 1; 0; 1)) )
Resultaat: 25-1101 / 25-1104 / Geen factuur / 25-1103 / Geen factuur / 25-110625-1101 / 25-1104 / Geen factuur / 25-1103 / Geen factuur / 25-1106
Stap voor stap
- LET geeft de onderdelen een naam. regels is
A2:A7, zes bankomschrijvingen. Er wordt nog niets berekend. - erna is TEKST.NA(regels; "factuur "; 1; 1; 0; ""). Het scheidingsteken is het woord plus een spatie. Het vierde argument 1 negeert hoofdletters, dus FACTUUR telt ook mee. De tekst voor "niet gevonden" is een lege tekst.
Rij voor rij bevat erna:
- 25-1101 Kaya Design BV
- 25-1104 Hendriks Metaal
- een lege tekst (Salaris december bevat geen factuur)
- 25-1103
- een lege tekst (Overboeking spaarrekening)
- 25-1106 Smits Bouw BV
- ALS(erna = ""; ...) test eerst elke rij: waar erna leeg is, staat het label Geen factuur. Voor rij 3 en 5 geeft ALS het label terug in plaats van het resultaat van TEKST.VOOR.
- Anders draait het derde argument: TEKST.VOOR(erna; " "; 1; 0; 1) knipt bij de eerste spatie en houdt over wat ervoor staat. Dat geeft 25-1101, 25-1104, 25-1103 en 25-1106. In 25-1103 staat geen spatie, en de laatste 1 laat het einde van de tekst als scheidingsteken fungeren, dus het nummer blijft heel.
- Zes antwoorden lopen over van
D2totD7: 25-1101, 25-1104, Geen factuur, 25-1103, Geen factuur, 25-1106.
Let op: De omgekeerde fout is het vierde argument op de standaardwaarde 0 laten staan. FACTUUR 25-1104 wordt dan niet gevonden, de rij toont Geen factuur, en het resultaat lijkt aannemelijk omdat andere rijen ook dat label hebben.
Meer over dit voorbeeld: waarom het werkt, nog 2 valkuilen, 1 variant
Waarom het werkt
Door het werk te splitsen in erna en de slotstap met ALS beslist de test op erna, en niet op het eindresultaat, welke rijen geen factuur hebben, en ALS voor die rijen het label teruggeeft in plaats van het resultaat van TEKST.VOOR; daarom is de tekst voor "niet gevonden" een lege tekst en niet het label zelf, want TEKST.VOOR zou het label anders in stukken knippen.
Gebruik deze opbouw niet als omschrijvingen geen vast patroon volgen (verwijzingen met meerdere nummers, tikfouten in het woord factuur): TEKST.NA vindt alleen het exacte scheidingsteken, en dan is Power Query of handmatige beoordeling betrouwbaarder, ten koste van een verversstap of tijd.
Meer om op te letten
- Staat er in een omschrijving Factuur 25-1106, Smits Bouw BV, dan laat de knip bij de eerste spatie een komma staan:
25-1106,. Knip ook op een komma met een matrixconstante,{" "\","}, of controleer het resultaat met LENGTE. - Laat je het zesde argument van TEKST.NA weg, dan geeft elke regel zonder factuur #N/B, en die fout loopt door de ALS-test. Alleen die rijen worden #N/B; de andere rijen blijven goed.
Varianten
=TEKST.VOOR(TEKST.NA(A2:A7,"factuur ", 1, 1), " ", 1, 0, 1, "")
=TEKST.VOOR(TEKST.NA(A2:A7;"factuur "; 1; 1); " "; 1; 0; 1; "")
Zonder LET: korter, maar regels zonder factuur tonen dan #N/B in plaats van een label (TEKST.VOOR geeft de fout door), en een beoordelaar ziet twee geneste aanroepen zonder namen.
Veelgemaakte fouten
| Symptoom | Oorzaak | Oplossing |
|---|---|---|
| #N/B in sommige rijen, andere rijen werken | Sommige rijen geven #N/B terwijl andere goed gaan. | In die cellen ontbreekt het scheidingsteken, of het komt minder vaak voor dan je hebt gevraagd. Geef het zesde argument op om een melding te tonen. |
| Een opzoekactie op het resultaat vindt niets | Het resultaat ziet er goed uit, maar een opzoekactie erop vindt niets. | Het scheidingsteken was korter dan de echte scheiding, bijvoorbeeld "," terwijl de tekst ", " heeft, waardoor er een spatie voor blijft staan. Zet de spatie in het scheidingsteken, of zet SPATIES.WISSEN rond het resultaat. |
| Een getalachtig deel telt niet mee in een som | Een deel dat op een getal lijkt, zoals 0412, komt als tekst terug en telt niet mee in een som. | TEKST.NA geeft altijd tekst. Zet er WAARDE omheen als je een getal nodig hebt; let op dat WAARDE voorloopnullen laat vallen. |
| Een scheidingsteken in hoofdletters wordt niet gevonden | Een scheidingsteken in hoofdletters wordt niet gevonden, terwijl het woord in de tekst staat. | Standaard let de functie op hoofdletters. Zet het vierde argument op 1 om ze te negeren. |
Gebruikt in combinaties
- De klant vinden via een bankomschrijvingKnip het factuurnummer uit een bankomschrijving met TEKST.NA en TEKST.VOOR en zoek de klant daarna op in de debiteurenlijst met X.ZOEKEN.Excel 2024 of nieuwer (Deze combinatie vereist Excel 2024 of nieuwer)