Hoe het aantal woorden in Excel te krijgen (met behulp van eenvoudige formules)

Wilt u het aantal woorden in Excel krijgen? Geloof het of niet, Excel heeft geen ingebouwde woordenteller.

Maar maak je geen zorgen.

Een coole verzameling Excel-functies (of een beetje VBA als je zin hebt) kan dit gemakkelijk voor je doen.

In deze zelfstudie laat ik een aantal manieren zien om woorden in Excel te tellen met behulp van eenvoudige formules. En aan het einde, zal ook een techniek worden behandeld om een ​​aangepaste formule te maken met behulp van VBA die u snel het aantal woorden van elke tekst in elke cel zal geven.

Formule om het aantal woorden in Excel te krijgen

Voordat ik je de exacte formule geef, laten we snel de logica behandelen om het aantal woorden te krijgen.

Stel dat ik een zin heb, zoals hieronder weergegeven, waarvoor ik het aantal woorden wil krijgen.

Hoewel Excel het aantal woorden niet kan tellen, kan het wel het aantal spaties in een zin tellen.

Dus om het aantal woorden te krijgen, kunnen we deze spaties tellen in plaats van woorden en 1 optellen bij het totaal (omdat het aantal spaties één minder is dan het aantal woorden).

Nu kunnen er twee mogelijkheden zijn:

  1. Er is een enkele spatie tussen elk woord
  2. Er zijn meerdere spaties tussen woorden.

Laten we dus eens kijken hoe we het totale aantal woorden in elk geval kunnen tellen.

Voorbeeld 1 - Wanneer er een enkele spatie tussen woorden staat

Laten we zeggen dat ik de volgende tekst in cel A1 heb: Laat de kat uit de zak

Om het aantal woorden te tellen, is hier de formule die ik zou gebruiken:

=LENGTE(A1)-LENGTE(VERVANGING(A1," ",""))+1

Dit zou als resultaat '7' opleveren.

Zo werkt deze formule:

  • LENTE (A1) - Dit deel van de formule retourneert 26, wat het totale aantal tekens in de tekst in cel A1 is. Het bevat zowel de teksttekens als de spatietekens.
  • SUBSTITUTE(A1," ","") - Dit deel van de formule verwijdert alle spaties uit de tekst. Dus het resultaat zou in dit geval zijn: Laat de kat uit de zak.
  • LEN(VERVANG(A1," ",“”) - Dit deel van de formule telt het totale aantal tekens in de tekst zonder spaties. Het resultaat hiervan zou dus 20 zijn.
  • LENGTE(A1)-LENGTE(VERVANGING(A1," ",“”)) - Dit zou de tekstlengte zonder spaties aftrekken van de tekstlengte met spaties. In het bovenstaande voorbeeld zou het 26-20 zijn, wat 6 is.
  • =LENGTE(A1)-LENGTE(VERVANGING(A1," ",“”))+1 - We tellen 1 op bij het totaalresultaat aangezien het totaal aantal spaties één minder is dan het totaal aantal woorden. Er is bijvoorbeeld één spatie in twee woorden en twee spaties in drie woorden.

Dit werkt goed als je maar één spatie tussen woorden hebt. Maar het zou niet werken als je meer dan één spatie tussen woorden hebt.

Gebruik in dat geval de formule in het volgende voorbeeld.

Voorbeeld 2: Wanneer er meerdere spaties tussen woorden staan

Stel dat je de volgende tekst hebt: Laat de kat uit de zak

In dit geval zijn er meerdere spatietekens tussen woorden.

Om het aantal woorden te krijgen, moeten we eerst alle extra spaties verwijderen (zodat er slechts één spatie tussen twee woorden staat) en vervolgens het totale aantal spaties tellen.

Hier is de formule die ons het juiste aantal woorden geeft:

=LENGTE(TRIM(A1))-LENGTE(VERVANGING(A1," ",""))+1

Dit is een vergelijkbare formule die in het bovenstaande voorbeeld wordt gebruikt, met een kleine wijziging - we hebben hier ook de TRIM-functie gebruikt.

Excel TRIM-functie verwijdert alle voorloop-, volg- en extra spaties (behalve enkele spaties tussen woorden).

De rest van de formule werkt hetzelfde (zoals uitgelegd in voorbeeld 1).

Opmerking: als er geen spaties tussen woorden staan, wordt het als één woord beschouwd.

VBA-aangepaste functie gebruiken om woorden in Excel te tellen

Hoewel de bovenstaande formules prima werken, kunt u, als u het aantal woorden vaak moet berekenen, VBA gebruiken om een ​​aangepaste functie te maken (ook wel een door de gebruiker gedefinieerde functie genoemd).

Het voordeel van het gebruik van een aangepaste functie is dat u deze één keer kunt maken en vervolgens kunt gebruiken zoals elke andere normale Excel-functie. Dus in plaats van een lange complexe formule te maken zoals we in de twee bovenstaande voorbeelden hebben gedaan, heb je een eenvoudige formule die de celverwijzing neemt en je meteen het aantal woorden geeft.

Hier is de code die deze aangepaste functie maakt om het aantal woorden in Excel te krijgen.

Functie WordCount(CellRef.Text) Dim TextStrng As String Dim Result() As String Result = Split(WorksheetFunction.Trim(CellRef.Text), " ") WordCount = UBound(Result()) + 1 End Function

Eenmaal gemaakt, kunt u de WordCount-functie gebruiken, net als elke andere reguliere Excel-functie.

In de bovenstaande code voor de aangepaste functie heb ik de TRIM-functie van het werkblad gebruikt om voorloop-, volg- en dubbele spaties tussen woorden te verwijderen. Dit zorgt ervoor dat alle drie de cellen hetzelfde resultaat geven, omdat alleen de woorden worden geteld en niet de dubbele spaties.

Hoe deze formule werkt:

De bovenstaande VBA-code gebruikt eerst de TRIM-functie om alle voorloop-, volg- en dubbele spaties uit de tekstreeks in de cel waarnaar wordt verwezen te verwijderen.

Zodra het de opgeschoonde string heeft, gebruikt het de SPLIT-functie in VBA om de tekststring te splitsen op basis van het scheidingsteken, dat we hebben gespecificeerd als het spatieteken. Dus elk woord wordt gescheiden en opgeslagen als een afzonderlijk item in de variabele Resultaat.

Vervolgens gebruiken we de UBOUND-functie om het totale aantal items te tellen dat is opgeslagen in de resultaatvariabelen. Omdat VBA een basis van 0 heeft, moeten we 1 optellen om het totale aantal woorden te krijgen.

Dit betekent dat Result(0) het eerste woord opslaat, Result(1) het tweede woord opslaat, enzovoort. Aangezien dit tellen begint bij 0, moeten we 1 optellen om het echte aantal woorden te krijgen.

Waar plaats je deze code?

Wanneer u een aangepaste functie maakt, moet u de code in de VB-editor van de werkmap plaatsen (dit is de achterkant van de werkmap waar u code kunt schrijven om taken te automatiseren en aangepaste functies te maken).

Hieronder vindt u de stappen om de code voor de functie 'GetNumeric' in de werkmap te plaatsen.

  1. Ga naar het tabblad Ontwikkelaars.
  2. Klik op de Visual Basic-optie. Dit opent de VB-editor in de backend.
  3. Klik in het deelvenster Projectverkenner in de VB-editor met de rechtermuisknop op een object voor de werkmap waarin u de code wilt invoegen. Als u de Projectverkenner niet ziet, gaat u naar het tabblad Weergave en klikt u op Projectverkenner.
  4. Ga naar Invoegen en klik op Module. Hiermee wordt een moduleobject voor uw werkmap ingevoegd.
  5. Kopieer en plak de code in het modulevenster.

Nadat u de code in het codevenster hebt gekopieerd, kunt u teruggaan naar uw werkblad en deze functie gebruiken net als elke andere reguliere Excel-functie.

Typ gewoon =Woord en het zal u de formule in de lijst tonen.

Er is één argument voor nodig, namelijk de celverwijzing, en het geeft je meteen het aantal woorden erin.

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave