KutoolsforOffice — Eén oplossing, vijf krachtige tools.Meer bereiken met minder moeite.

Voeg tekens in na elke X tekens in Excel-cellen – Eenvoudige methoden

AuteurXiaoyang Wijzigingsdatum

Wanneer u werkt met productcodes, serienummers, telefoonnummers, ID-nummers of lange tekstreeksen in Excel, wilt u wellicht een specifiek teken invoegen na een vast aantal tekens. Bijvoorbeeld: u wilt ABCDEF123456 omzetten naar ABC-DEF-123-456, of spaties toevoegen na elke 4 cijfers om lange getallen beter leesbaar te maken.
Excel heeft hiervoor geen directe ingebouwde knop, maar u kunt dit eenvoudig realiseren met een paar handige methoden. In dit artikel laten we u verschillende praktische manieren zien om specifieke tekens in te voegen na elke X tekens in Excel-cellen.

Voeg tekens toe na elke X tekens

Voeg tekens in na elke X tekens in Excel

Belangrijke opmerkingen en beperkingen

Conclusie


Voeg tekens in na elke X tekens in Excel

De volgende methoden laten u zien hoe u snel specifieke tekens kunt invoegen na een opgegeven aantal tekens in Excel, zodat u lange teksten, ID’s, productcodes of cijferreeksen eenvoudig kunt splitsen op vaste intervallen voor een gestandaardiseerdere en beter leesbare weergave.

 

Methode 1: Voeg tekens in na elke X tekens met een formule

Als u Excel 365 of Excel 2021 gebruikt, kunt u een dynamische matrixformule toepassen om tekst in groepen van vaste lengte te splitsen en deze daarna samen te voegen met een opgegeven scheidingsteken.

Voer de volgende formule in een lege cel in:

=TEXTJOIN("-",TRUE,MID(A2,SEQUENCE(ROUNDUP(LEN(A2)/4,0),,1,4),4))

Druk daarna op Enter en sleep de vulgreep omlaag om de formule toe te passen op andere cellen.
Voeg tekens toe na elke X tekens met formule

Hoe werkt deze formule?

  • LEN(A2): Geeft het totale aantal tekens in cel A2 weer.
  • ROUNDUP(LEN(A2)/4,0): Berekent hoeveel groepen er nodig zijn. Ook als de laatste groep minder dan 4 tekens bevat, wordt deze meegerekend.
  • SEQUENCE(ROUNDUP(LEN(A2)/4,0),,1,4): Genereert de beginposities: 1, 5, 9, 13, enzovoort.
  • MID(A2,SEQUENCE(...),4): Haalt elke groep van 4 tekens uit de tekst.
  • TEXTJOIN("-",WAAR,...): Voegt alle geëxtraheerde groepen samen met een koppelteken.

Pas de formule aan

U kunt het teken en het interval naar eigen wens aanpassen.

Voeg elke 4 tekens een spatie in:

=TEXTJOIN(" ",TRUE,MID(A2,SEQUENCE(ROUNDUP(LEN(A2)/4,0),,1,4),4))

Voeg elke 2 tekens een slash in:

=TEXTJOIN("/",TRUE,MID(A2,SEQUENCE(ROUNDUP(LEN(A2)/2,0),,1,2),2))

Gebruik celverwijzingen voor flexibele instellingen: (Deze versie is flexibeler omdat u het in te voegen teken of intervalnummer kunt wijzigen zonder de formule zelf aan te passen.)

Als:

  • Oorspronkelijke Tekst staat in A2,
  • Het in te voegen teken staat in B1,
  • Het intervalnummer staat in C1
=TEXTJOIN($B$1,TRUE,MID(A2,SEQUENCE(ROUNDUP(LEN(A2)/$C$1,0),,1,$C$1),$C$1))

Voor- en nadelen

VoordelenNadelen
Dynamisch resultaat dat automatisch wordt bijgewerktWerkt alleen in Excel 365, Excel 2021 en nieuwere versies
Geen VBA vereistFormule kan moeilijk zijn voor beginners
Gemakkelijk naar beneden te kopiëren voor meerdere cellenResultaat is gebaseerd op een formule, geen statische tekst
 

Methode 2: Voeg tekens in na elke X tekens met VBA-code

Als u in meerdere cellen na een vast aantal tekens een specifiek teken wilt invoegen en het resultaat direct zichtbaar wilt hebben, is VBA een uitstekende keuze.

  1. Houd de toetsen ALT + F11 ingedrukt in Excel om het Microsoft Visual Basic for Applications-venster te openen.
  2. Klik op Invoegen > Module en plak de volgende code in het modulevenster.
Sub InsertCharacter()
'Updateby Extendoffice
Dim Rng As Range
Dim InputRng As Range, OutRng As Range
Dim xRow As Integer
Dim xChar As String
Dim index As Integer
Dim arr As Variant
Dim xValue As String
Dim outValue As String
Dim xNum As Integer
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
xRow = Application.InputBox("Number of characters :", xTitleId, Type:=1)
xChar = Application.InputBox("Specify a character :", xTitleId, Type:=2)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
Set OutRng = OutRng.Range("A1")
xNum = 1
For Each Rng In InputRng
    xValue = Rng.Value
    outValue = ""
    For index = 1 To VBA.Len(xValue)
        If index Mod xRow = 0 And index <> VBA.Len(xValue) Then
            outValue = outValue + VBA.Mid(xValue, index, 1) + xChar
        Else
            outValue = outValue + VBA.Mid(xValue, index, 1)
        End If
    Next
    OutRng.Cells(xNum, 1).Value = outValue
    xNum = xNum + 1
Next
End Sub
  1. Druk op F5 om deze code uit te voeren. Vervolgens verschijnt een dialoogvenster waarin u wordt gevraagd het gegevensbereik te selecteren waarin u een specifiek teken in de tekstreeksen wilt invoegen. Zie onderstaande afbeelding:
    Selecteer het gegevensbereik
  2. Klik daarna op OK. Voer in het volgende dialoogvenster het getal in waarna u het teken wilt invoegen. Zie afbeelding:
    Voer het aantal tekens in
  3. Klik nogmaals op OK en voer in het daaropvolgende dialoogvenster het teken in dat u aan de tekst wilt toevoegen. Zie afbeelding:
    Geef een teken op
  4. Klik op OK en kies in het dialoogvenster de cel waarin u het resultaat wilt weergeven. Zie afbeelding:
    Kies uitvoercel
  5. Klik tot slot op OK. Excel voegt het opgegeven teken in na elke X tekens en plaatst de resultaten in het geselecteerde plaatsingsgebied.
    Voeg tekens toe na elke X tekens met VBA-code

Voor- en nadelen

VoordelenNadelen
Werkt in oudere Excel-versiesVereist inschakelen van macro's
Kan veel cellen tegelijk verwerkenVBA kan moeilijk zijn voor beginners
Geeft direct statische resultaten weerNiet dynamisch als Brongegevens verandert
Flexibele instellingen voor tekens en intervallenMacrobestanden moeten worden opgeslagen als .xlsm
 

Methode 3: Voeg tekens in na elke X tekens met een door de gebruiker gedefinieerde functie

Een door de gebruiker gedefinieerde functie, ook wel UDF genoemd, stelt u in staat om uw eigen Excel-functie te maken met VBA. Zodra u de functie hebt toegevoegd, kunt u deze net als een standaard werkbladformule gebruiken.

  1. Druk op Alt + F11 om de VBA-editor te openen.
  2. Klik op Invoegen > Module. Kopieer en plak de volgende code in de module.
Function InsertEveryX(TextStr As String, InsertChar As String, IntervalNum As Long) As String
    Dim i As Long
    Dim ResultStr As String
    If IntervalNum <= 0 Then
        InsertEveryX = TextStr
        Exit Function
    End If
    For i = 1 To Len(TextStr) Step IntervalNum
        ResultStr = ResultStr & Mid(TextStr, i, IntervalNum) & InsertChar
    Next i
    If Len(ResultStr) > 0 Then
        ResultStr = Left(ResultStr, Len(ResultStr) - Len(InsertChar))
    End If
    InsertEveryX = ResultStr
End Function
  1. Sluit de VBA-editor en keer terug naar het werkblad. Gebruik de volgende formule:
=InsertEveryX(A2,"-",4)

Tip: U kunt het in te voegen teken en het intervalgetal ook opslaan in cellen.

Sleep daarna de vulgreep omlaag om de formule toe te passen op andere cellen.
Voeg tekens toe na elke X tekens met udf

Voor- en nadelen

VoordelenNadelen
Werkt als een normale Excel-formuleVereist VBA-instelling
Makkelijker te lezen dan een complexe formuleMacro's moeten zijn ingeschakeld
Herbruikbaar in de werkmapNiet beschikbaar in andere werkmappen, tenzij gekopieerd
Ondersteunt aangepaste tekens en intervallenWerkmap moet worden opgeslagen als .xlsm
 

Methode 4: Voeg tekens in na elke X tekens met Kutools voor Excel

Als u geen complexe formules of VBA-code wilt gebruiken, biedt Kutools voor Excel een eenvoudigere manier om tekens in celtekst in te voegen. Met de teksttools voegt u razendsnel specifieke tekens op vaste posities toe of past u tekstverwerkingsbewerkingen toe op meerdere cellen tegelijk.

  1. Selecteer de cellen waarin u tekens wilt invoegen. Klik vervolgens op Kutools > Tekst > Tekst toevoegen.
    selecteer de functie tekst toevoegen
  2. In het dialoogvenster Tekst toevoegen:
    1. Voer het teken in dat u wilt invoegen, zoals -, / of een spatie in het Tekstvak.
    2. Kies in de sectie Positie toevoegen de optie Na opgegeven positie en voer de posities in waarop het teken moet worden ingevoegd.
    3. Klik op OK.
      stel opties in in het dialoogvenster

Tip: In dit voorbeeld heb ik 4, 8 en 12 ingevoerd in het vak ‘Na opgegeven positie’, zodat de opgegeven tekst na het 4e, 8e en 12e teken van elke tekstreeks wordt ingevoegd.

Het opgegeven teken is nu ingevoegd in de celwaarden met het opgegeven interval.

Voeg sneller tekst in Excel-cellen in met Kutools

Met de functie Tekst toevoegen van Kutools voor Excel voegt u in een handomdraai specifieke tekens, symbolen of tekst toe aan geselecteerde cellen—zonder ingewikkelde formules of VBA-code te hoeven schrijven.

Geen formules of VBAVoeg tekst in met eenvoudige instellingen in plaats van complexe formules te bouwen.
BatchverwerkingPas dezelfde invoegregel tegelijkertijd toe op meerdere cellen.
Flexibele positiesTekst toevoegen aan het begin, einde of op opgegeven tekenposities.
Beginner-vriendelijkEen visueel dialoogvenster maakt tekstopmaak eenvoudiger en efficiënter.

Belangrijke opmerkingen en beperkingen

1. Formuleresultaten zijn dynamisch

Wanneer u de formulemethode gebruikt, wordt het resultaat automatisch bijgewerkt zodra de Oorspronkelijke Tekst wijzigt. Dit is ideaal voor doorlopende werkbladen, maar het resultaat blijft wel gebaseerd op een formule.

Als u vaste tekstwaarden nodig heeft, kopieert u de formuleresultaten en gebruikt u:Start>Plakken>Waarden plakken

2. VBA en Kutools leveren meestal statische resultaten op.

VBA en Kutools zijn ideaal voor eenmalige verwerking. Zodra de tekens zijn ingevoegd, wordt het resultaat niet automatisch bijgewerkt als de brontekst wijzigt—tenzij u de code of het hulpmiddel opnieuw uitvoert.

3. Controleer of de laatste groep korter is.

Als de tekstlengte niet exact deelbaar is door het intervalgetal, bevat de laatste groep de resterende tekens.

4. Lege cellen

Wanneer het geselecteerde bereik lege cellen bevat, slaan VBA en Kutools deze doorgaans automatisch over of laten ze ongewijzigd. Gebruikt u echter formules, dan kunnen lege cellen onverwachte resultaten of fouten veroorzaken. Voorkom dit door uw formule in te sluiten met IF of IFERROR, zodat lege cellen ook daadwerkelijk leeg blijven.

=IF(A2="","",TEXTJOIN("-",TRUE,MID(A2,SEQUENCE(ROUNDUP(LEN(A2)/4,0),,1,4),4)))

5. Speciale tekens

De meest gebruikte scheidingstekens—zoals streepjes, komma’s, spaties, schuine strepen en punten—kunt u probleemloos invoeren. Daarnaast is het ook mogelijk om aangepaste tekst toe te voegen.


Conclusie

Het toevoegen van tekens om de X tekens in Excel maakt lange tekstreeksen gemakkelijker leesbaar, opmaakbaar en beheersbaar. Voor gebruikers van Excel 365 of Excel 2021 biedt de formulemethode een flexibele en dynamische oplossing. Moet u tegelijkertijd veel cellen verwerken? Dan helpt VBA u de taak efficiënt af te ronden. Wilt u een herbruikbare aangepaste formule? Kies dan voor een door de gebruiker gedefinieerde functie (UDF). En voor wie een eenvoudige, visuele en codevrije aanpak prefereert, biedt Kutools voor Excel een snellere manier om dit soort tekstformaat-taak aan te pakken.

Gebruik over het algemeen formules voor dynamische resultaten, VBA of UDF’s wanneer u meer controle nodig hebt, en Kutools voor de eenvoudigste workflow met minder handmatige stappen.