Skip to main content

 Hoe converteer je een tekst naar hoofdletters met uitzonderingen in Excel?

Author: Xiaoyang Last Modified: 2025-05-29

In Excel kun je de functie 'Eerste letter in hoofdletters' gebruiken om tekst gemakkelijk om te zetten naar hoofdletters, maar soms wil je bepaalde woorden uitsluiten bij het omzetten van tekst naar hoofdletters, zoals te zien is in de onderstaande schermafbeelding. In dit artikel bespreek ik enkele snelle trucs om deze taak in Excel uit te voeren.

convert text string to proper case with exceptions

Converteer tekst naar hoofdletters met uitzonderingen door een formule te gebruiken

Converteer tekst naar hoofdletters met uitzonderingen door VBA-code te gebruiken


Converteer tekst naar hoofdletters met uitzonderingen door een formule te gebruiken

Misschien kan de volgende formule u helpen om deze taak snel uit te voeren, doe het als volgt:

Voer deze formule in:

=UPPER(LEFT(A2))&MID(TRIM(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(" "&PROPER(A2)&" "," Of "," of ")," A "," a "),"Is "," is ")," Usa "," USA ")),2,LEN(A2)) in een cel waar je het resultaat wilt krijgen, en sleep vervolgens de vulhendel om deze formule te kopiëren, en de tekst wordt omgezet naar hoofdletters met specifieke uitzonderingen, zie screenshot:

convert text string to proper case with exceptions by using formula

Opmerking: In de bovenstaande formule is A2 de cel die je wilt converteren, “Of ”, “A”, “Is”, “Usa” zijn de normale woorden met hoofdletters na conversie, “of ”, “a”, “is”, “USA” zijn de woorden die je wilt uitsluiten van de hoofdletterconversie. Je kunt ze naar behoefte wijzigen of andere woorden toevoegen met de functie SUBSTITUTE.



Converteer tekst naar hoofdletters met uitzonderingen door VBA-code te gebruiken

Als de bovenstaande formule enigszins moeilijk te begrijpen en aan te passen is, kun je ook een VBA-code gebruiken om deze taak uit te voeren. Volg de volgende stappen één voor één.

1. Houd de toetsen ALT + F11 ingedrukt om het venster Microsoft Visual Basic for Applications te openen.

2. Klik op Invoegen > Module, en plak de volgende code in het Modulevenster.

VBA-code: converteer tekst naar hoofdletters met uitzonderingen:

Sub CellsValueChange()
'Updateby Extendoffice
    Dim xSRg As Range
    Dim xDRg As Range
    Dim xPRg As Range
    Dim xSRgArea As Range
    Dim xRgVal As String
    Dim xAddress As String
    Dim I As Long
    Dim K As Long
    Dim KK As Long
    On Error Resume Next
    xAddress = Application.ActiveWindow.RangeSelection.Address
    Set xSRg = Application.InputBox("Original cells:", "KuTools For Excel", xAddress, , , , , 8)
    If xSRg Is Nothing Then Exit Sub
    Set xDRg = Application.InputBox("Output cells:", "KuTools For Excel", , , , , , 8)
    If xDRg Is Nothing Then Exit Sub
    Set xPRg = Application.InputBox("Cells to exclude:", "KuTools For Excel", , , , , , 8)
    If xPRg Is Nothing Then Exit Sub
    Set xDRg = xDRg(1)
    For I = 1 To xSRg.Areas.Count
        Set xSRgArea = xSRg.Areas.Item(I)
        For K = 1 To xSRgArea.Count
            xRgVal = xSRgArea(K).Value
            If Not IsNumeric(xRgVal) Then
                xRgVal = CorrectCase(xRgVal, xPRg)
                xDRg.Offset(KK).Value = xRgVal
            End If
            KK = KK + 1
        Next
    Next
End Sub
Function CorrectCase(ByVal xRgVal As String, ByVal xPRg As Range) As String
    Dim xArrWords As Variant
    Dim I As Integer
    Dim xPointer As Integer
    Dim xVal As String
    xPointer = 1
    xVal = xRgVal
    xArrWords = WordsOf(xRgVal)
    For I = 0 To UBound(xArrWords)
        xPointer = InStr(xPointer, " " & xVal, " " & xArrWords(I))
        Debug.Print xPointer
        Mid(xVal, xPointer) = CorrectCaseOneWord(CStr(xArrWords(I)), xPRg)
    Next I
    CorrectCase = xVal
End Function
Function WordsOf(xRgVal As String) As Variant
    Dim xDelimiters As Variant
    Dim xArrRtn As Variant
    xDelimiters = Array(",", ".", ";", ":", Chr(34), vbCr, vbLf)
    For Each xEachDelimiter In xDelimiters
        xRgVal = Application.WorksheetFunction.Substitute(xRgVal, xEachDelimiter, " ")
    Next xEachDelimiter
    xArrRtn = Split(Trim(xRgVal), " ")
    WordsOf = xArrRtn
End Function
Function CorrectCaseOneWord(xArrWord As String, xERg As Range) As String
    With xERg
        If IsError(Application.Match(xArrWord, .Cells, 0)) Then
            CorrectCaseOneWord = Application.Proper(xArrWord)
        Else
            CorrectCaseOneWord = Application.VLookup(xArrWord, .Cells, 1, 0)
        End If
    End With
End Function

3. Druk vervolgens op de toets F5 om deze code uit te voeren, en er verschijnt een pop-upvenster dat je eraan herinnert de originele cellen te selecteren die je wilt converteren, zie screenshot:

vba code to select data range

4. Klik vervolgens op OK, selecteer de cellen waar je de resultaten wilt uitvoeren in het pop-upvenster, zie screenshot:

vba code to desitination cell

5. Klik opnieuw op OK, en in het pop-upvenster selecteer je de teksten die je wilt uitsluiten, zie screenshot:

vba code to select excluded text

6. Klik vervolgens op OK om de dialoogvensters te sluiten, en alle tekst is geconverteerd naar hoofdletters, met uitzondering van de gespecificeerde woorden, zie screenshot:

result of converting text string to proper case with exceptions

Beste Office-productiviteitstools

🤖 Kutools AI Assistent: Breng een revolutie teweeg in data-analyse Methode: Intelligente uitvoering |Code genereren |Aangepaste formules maken |Gegevens analyseren en grafieken genereren |Kutools-functies gebruiken
Populaire functies: Dubbele waarden markeren, markeren of identificeren | Verwijder lege rijen | Kolommen of cellen samenvoegen zonder gegevensverlies | Afronden ...
Super ZOEKEN: VLookup met meerdere criteria | VLookup met meerdere waarden | Meervoudig-blad opzoeken | Fuzzy Match ...
Geavanceerde keuzelijst: Snel keuzelijst maken | Afhankelijke keuzelijst | Meervoudige selectie keuzelijst ...
Kolombeheer: Specifiek aantal kolommen toevoegen | Kolommen verplaatsen | Zichtbaarheid van verborgen kolommen wisselen | Bereik & kolommen vergelijken ...
Uitgelichte functies: Rasterfocus | Ontwerpweergave | Verbeterde formulebalk | Werkboek- & Werkbladbeheer | AutoTekstbibliotheek | Datumkiezer | Gegevens samenvoegen | Cellen coderen/decoderen | E-mail verzenden per lijst | Superfilter | Speciaal filter (filter cellen met vetgedrukt/cursief/doorhalen...) ...
Top15 toolsets:12 Teksttools (Tekst toevoegen, Specifieke tekens verwijderen, ...) |50+ Grafiek type (Gantt-diagram, ...) |40+ Praktische formules (Leeftijd berekenen op basis van geboortedatum, ...) |19 Invoegtools (QR-code invoegen, Afbeelding invoegen vanaf pad, ...) | 12 Conversietools (Omzetten naar woorden, Valutaconversie, ...) | 7 Samenvoeg- & Opsplitstools (Geavanceerd samenvoegen van rijen, Cellen splitsen, ...) | ... en meer

Versterk je Excel-vaardigheden met Kutools voor Excel en ervaar ongeëvenaarde efficiëntie. Kutools voor Excel biedt meer dan300 geavanceerde functies om je productiviteit te verhogen en tijd te besparen. Klik hier om de functie te krijgen die je het meest nodig hebt...


Office Tab brengt een tabbladinterface naar Office en maakt je werk veel eenvoudiger

  • Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in
  • Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster, in plaats van in nieuwe vensters.
  • Verhoog je productiviteit met50% en bespaar dagelijks honderden muisklikken!