VBA Uitleg
  • Home
  • Boeken
  • Vuistregels, fouten, sneltoetsen
  • Macrobeveiliging
  • - Blokkering opheffen
  • Datums van Feestdagen
  • EXCEL macro's
  • - Alle opmerkingen opmaken
  • - Trek Unieke getallen
  • - Naar de cel met vandaag
  • - Gekleurde cellen optellen
  • - Functies ronde vormen
  • - Gratis downloads
  • - Engels
  • WORD macro's
  • - Woord tellen
  • - Dialoogvenster etiketten
  • - Automatisch zonder macro
  • Contact
  • - Wim is...
Home > VBA in Word

Tellen hoe vaak een bepaald woord voorkomt

Heb je een lange tekst en wil je weten hoe vaak een bepaald woord daarin voorkomt? Dan telt deze macro dat razendsnel voor je. Deze macro kun je niet opnemen, maar je neemt de volgende code over. Daarvoor open je eerst het VBA-venster, als volgt. Klik op de tab Beeld, klik op Macro's en klik op Macro's  weergeven; het venster Macro's gaat open. Typ in het vak Macronaam als naam: TelWoord (dit is één woord). Klik op Maken; het VBA-venster gaat open. Je ziet het raamwerk van een macro-code, die begint met:
Sub Telwoord()
en eindigt met:
End
Verwijder de groene regels die met een ' beginnen.
Selecteer onderstaande code en plak die tussen Sub TelWoord() en End, zodat het geheel er als volgt uitziet:
 
Sub TelWoord()
Dim Woord As String
Dim teller As Integer
    Woord = InputBox("Welk woord wilt u tellen?")
    If Woord = "" Then End
    Application.ScreenUpdating = False
    Selection.HomeKey Unit:=wdStory, Extend:=wdMove
        With Selection.Find
            .ClearFormatting
            .Text = Woord
            .MatchWholeWord = True
           
            'Begin te tellen vanaf nul:
            teller = 0
            Do While .Execute
                teller = teller + 1
                Selection.MoveRight
            Loop
        End With
    MsgBox "In deze tekst staat " & teller & " keer '" & Woord & "'."
    Application.ScreenUpdating = True
End Sub

Wil je deze macro testen, laat dan dit VBA-venster open en zorg dat je een Word-document met tekst open hebt. Schakel over naar het VBA-venster. Klik ergens in deze code, klik op Uitvoeren en klik op Sub/UserForm uitvoeren (F5).
* sneltoets: of druk op dat moment op de F5-toets.
Er verschijnt een venster met de vraag: Welk woord wilt u tellen? Typ je woord in het vak onder in dit venster, bijvoorbeeld: van

Klik op de knop OK (of druk op de Enter-toets). Hierop verschijnt een venster met de uitslag, in dit voorbeeld:
In deze tekst staat 7 keer 'van'.

Klik op de knop OK (of druk op de Enter-toets) om dit venster te sluiten.
Foto

Knop in de werkbalk Snelle toegang plaatsen

Je wilt de macro die een bepaald woord telt, vaker kunnen gebruiken, en in al je teksten. Daarvoor maak je een eigen knop in de werkbalk Snelle toegang, helemaal boven de tabs van het lint.
Klik hiervoor met de rechtermuisknop op de werkbalk Snelle toegang en klik op Werkbalk Snelle toegang aanpassen.
  • Of klik op het pijltje rechts van de werkbalk Snelle toegang en kies Meer opdrachten.
Er verschijnt een venster met een lijst opdrachten. Klik in de keuzelijst Kies opdrachten uit op Macro's. In de lijst die verschijnt zie je je eigen macro aangeduid als: Normal.NewMacros.TelWoord. Klik daarop en klik op Toevoegen; de aanduiding verschijnt ook rechts in het venster (daar staan alle knoppen van de werkbalk Snelle toegang onder elkaar, in die werkbalk zelf staan ze naast elkaar).
Op de knop staat een standaardpictogram en die verander je als volgt. Klik op de naam van je macro (rechts in het venster) en klik op Wijzigen; er opent een venster met pictogrammen. Kies hier uw pictogram.
Als u later in de werkbalk Snelle toegang de muisaanwijzer op deze knop houdt, verschijnt er een infolabel. Wat daarin staat, kun je hier ook instellen. Typ bij Weergavenaam een korte omschrijving bij deze knop, bijvoorbeeld: Tel een woord.
Sluit deze vensters; boven in beeld zie je jouw eigen knop met dit pictogram terug. Daarmee bedien je voortaan je eigen woord-teller.
Op deze pagina komen meer voorbeelden van handige macro's voor Word.
Tot gauw!
Wim de Groot denkt buiten de hokjes
Auteursrecht    Disclaimer    Contact