Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Aantal keer dat een letter in een cel of stuk tekst voorkomt telle

6,260 views
Skip to first unread message

Mariëlle

unread,
Jan 3, 2005, 8:39:08 AM1/3/05
to
Hoe kan ik het aantal keer dat een letter in een test (word) of in een cel
(excel) voorkomt laten tellen met een formule?

Luc Heyndrickx

unread,
Jan 3, 2005, 8:45:12 AM1/3/05
to
Mariëlle,

Wat een toeval... 1 uur geleden vroeg Piet Robe identiek hetzelfde:

In cel A1 staat de tekst.
In B1 het lettertje dat je wil tellen.

Deze formule heb je nodig:
=SOM(LENGTE(A1)-LENGTE(SUBSTITUEREN(A1;B1;"")))

Luc

"Mariëlle" <Mariël...@discussions.microsoft.com> schreef in bericht
news:56F7CB42-321F-4EFB...@microsoft.com...

Mariëlle

unread,
Jan 3, 2005, 8:55:05 AM1/3/05
to
Hoi Luc,

Bedankt, ik was het net aan het proberen maar krijg niet de goede uitkomst.
Enig idee hoe dat kan?
Cel A1 had de tekst: Arroseerhetvleesregelmatig
Cel B1 had de a

Misschien is het hoofdletter gevoelig?
Zal het nog eens proberen. Dank voor je snelle reactie!
Groeten
Mariëlle

"Luc Heyndrickx" schreef:

Luc Heyndrickx

unread,
Jan 3, 2005, 9:07:56 AM1/3/05
to
Hoi Mariëlle,

Inderdaad hoofdlettergevoelig.

Gebruik deze formule... en in Cel B1 zet je altijd een kleine letter.

=SOM(LENGTE(A1)-LENGTE(SUBSTITUEREN(KLEINE.LETTERS(A1);B1;"")))

Luc


"Mariëlle" <Mar...@discussions.microsoft.com> schreef in bericht
news:4C8094E8-C66E-4C47...@microsoft.com...

Niek Otten

unread,
Jan 3, 2005, 10:40:20 AM1/3/05
to
Omdat Luc me toch al te snel af was met een slimme oplossing, heb ik mijn
aanvakelijke VBA oplossing nog wat uitgebreid. Je kan nu een aantal cellen
meegeven (een range of bereik dus) en je kan ook een zoekstring van meer dan
1 teken meegeven. verder kun je kiezen tussen wel of niet
hoofdlettergevoelig; 1 is hoofdlettergevoelig, weglaten of alle andere
waardes niet hoofdlettergevoelig.
Syntax:
=CountString(Bereik;TeTellenString;HoofdletterGevoelig)
---------------------------------------------------------------------------------
Option Explicit
Function CountString(a As Range, b As String, Optional d) As Long
Dim i As Long
Dim c As Range
Dim e As String
Dim f As String
For Each c In a.Cells
If IsMissing(d) Then d = 0
If d = 1 Then
e = c
f = b
Else
e = UCase(c)
f = UCase(b)
End If
For i = 1 To Len(e) - Len(f)
If Mid(e, i, Len(f)) = f Then CountString = CountString + 1
Next i
Next
End Function
---------------------------------------------------------------------------------

--

Kind Regards,

Niek Otten

Microsoft MVP - Excel

"Luc Heyndrickx" <lucheyndrickx...@skynet.be> wrote in message
news:uW05g2Z8...@TK2MSFTNGP09.phx.gbl...

Piet Robe

unread,
Jan 3, 2005, 11:00:18 AM1/3/05
to
Beste Niek,
Luc had inderdaad een werkende oplossing gegeven. Ik heb
ook naar jouw oplossing gekeken en deze krijg niet
werkend.
Heb de code in een aparte module gezet.
vervolgens in een willekeurige cel
=CountString(A1:A2;a;1)
waarbij volgens mij A1 t/m a2 de range is
a de te tellen letter
1 voor de hoofdlettergevoeligheid.
Ik krijg als uitkomst alleen de mededeling waarde

Wat doe ik fout met jouw code?

met vriendelijke groet
Piet Robe
>-----Oorspronkelijk bericht-----

>> news:4C8094E8-C66E-4C47-B89E-
D08153...@microsoft.com...


>>> Hoi Luc,
>>>
>>> Bedankt, ik was het net aan het proberen maar krijg
niet de goede
>>> uitkomst.
>>> Enig idee hoe dat kan?
>>> Cel A1 had de tekst: Arroseerhetvleesregelmatig
>>> Cel B1 had de a
>>>
>>> Misschien is het hoofdletter gevoelig?
>>> Zal het nog eens proberen. Dank voor je snelle
reactie!
>>> Groeten
>>> Mariëlle
>>>
>>> "Luc Heyndrickx" schreef:
>>>
>>>> Mariëlle,
>>>>
>>>> Wat een toeval... 1 uur geleden vroeg Piet Robe
identiek hetzelfde:
>>>>
>>>> In cel A1 staat de tekst.
>>>> In B1 het lettertje dat je wil tellen.
>>>>
>>>> Deze formule heb je nodig:
>>>> =SOM(LENGTE(A1)-LENGTE(SUBSTITUEREN(A1;B1;"")))
>>>>
>>>> Luc
>>>>
>>>>
>>>>
>>>> "Mariëlle" <Mariël...@discussions.microsoft.com>
schreef in bericht

>>>> news:56F7CB42-321F-4EFB-B34A-
378A95...@microsoft.com...


>>>> > Hoe kan ik het aantal keer dat een letter in een
test (word) of in een
>>>> > cel
>>>> > (excel) voorkomt laten tellen met een formule?
>>>>
>>>>
>>>>
>>
>>
>
>

>.
>

Luc Heyndrickx

unread,
Jan 3, 2005, 11:12:44 AM1/3/05
to
En om te bewijzen dat je met formules zelfs sommige macro's (UDF) kan
uitschakelen:

=SOM(LENGTE(A1:A100)-LENGTE(SUBSTITUEREN(A1:A100;B1;"")))

Dit telt alle tekens in een Range van meerdere cellen. Dit is
hoofdlettergevoelig, maar kan op dezelfde manier als mijn andere oplossing
niet hoofdlettergevoelig gemaakt worden.

Dit is een matrixformule. Invoeren, en afsluiten met de toetsencombinatie:
Ctrl Shift Enter

Luc

"Niek Otten" <nico...@xs4all.nl> schreef in bericht
news:%23ZPhEqa...@TK2MSFTNGP12.phx.gbl...

Niek Otten

unread,
Jan 3, 2005, 1:07:58 PM1/3/05
to
Hi Piet,

"a" of een verwijzing naar een cel waar a in staat

--

Kind Regards,

Niek Otten

Microsoft MVP - Excel

"Piet Robe" <p_robeDITV...@hotmail.com> wrote in message
news:131401c4f1ad$52590b20$a601...@phx.gbl...

Piet Robe

unread,
Jan 3, 2005, 2:17:31 PM1/3/05
to
Beste Niek,
Bedankt voor je reactie, achteraf had ik aanhalingstekens
zelf ook kunnen bedenken. het bekende aha erlebnis.

met vriendelijke groet
Piet
>-----Oorspronkelijk bericht-----

>.
>

Piet Robe

unread,
Jan 3, 2005, 2:19:24 PM1/3/05
to
Beste Luc,
Zo zie je dat er meerdere wegen naar Rome leiden, waarvan
ik persoonlijk de formules handiger vind.

met vriendelijke groet
Piet Robe
>-----Oorspronkelijk bericht-----

>>> news:4C8094E8-C66E-4C47-B89E-
D08153...@microsoft.com...


>>>> Hoi Luc,
>>>>
>>>> Bedankt, ik was het net aan het proberen maar krijg
niet de goede
>>>> uitkomst.
>>>> Enig idee hoe dat kan?
>>>> Cel A1 had de tekst: Arroseerhetvleesregelmatig
>>>> Cel B1 had de a
>>>>
>>>> Misschien is het hoofdletter gevoelig?
>>>> Zal het nog eens proberen. Dank voor je snelle
reactie!
>>>> Groeten
>>>> Mariëlle
>>>>
>>>> "Luc Heyndrickx" schreef:
>>>>
>>>>> Mariëlle,
>>>>>
>>>>> Wat een toeval... 1 uur geleden vroeg Piet Robe
identiek hetzelfde:
>>>>>
>>>>> In cel A1 staat de tekst.
>>>>> In B1 het lettertje dat je wil tellen.
>>>>>
>>>>> Deze formule heb je nodig:
>>>>> =SOM(LENGTE(A1)-LENGTE(SUBSTITUEREN(A1;B1;"")))
>>>>>
>>>>> Luc
>>>>>
>>>>>
>>>>>
>>>>> "Mariëlle" <Mariël...@discussions.microsoft.com>
schreef in bericht

>>>>> news:56F7CB42-321F-4EFB-B34A-
378A95...@microsoft.com...


>>>>> > Hoe kan ik het aantal keer dat een letter in een
test (word) of in
>>>>> > een cel
>>>>> > (excel) voorkomt laten tellen met een formule?
>>>>>
>>>>>
>>>>>
>>>
>>>
>>
>>
>
>

>.
>

Luc Heyndrickx

unread,
Jan 3, 2005, 2:29:44 PM1/3/05
to
Indien iets met formules kan is dit inderdaad te verkiezen boven VBA.
Gaat gewoonlijk sneller (Op voorwaarde dat je formules goed geplaatst zijn.)

Luc


"Piet Robe" <p_robeDITV...@hotmail.com> schreef in bericht
news:120f01c4f1c9$22872820$a401...@phx.gbl...

Mariëlle

unread,
Jan 4, 2005, 3:39:02 AM1/4/05
to
Goede morgen Luc,

Ik heb jouw formule geprobeerd want ben erg geïnteresseerd in het tellen
over meerdere cellen heen. Echter, de lengte (a1:a100) werkt bij mij niet.
Ik krijg de melding #waarde!.
Enig idee hoe dat kan komen?
Bedankt
Groeten
Mariëlle

Luc Heyndrickx

unread,
Jan 4, 2005, 4:14:50 AM1/4/05
to
Omdat je dit niet als matrix-formule hebt ingevoerd.

Invoeren, en afsluiten met de toetsencombinatie:
Ctrl Shift Enter

Luc

"Mariëlle" <Mar...@discussions.microsoft.com> schreef in bericht
news:4A4083FD-5C8C-4687...@microsoft.com...

Mariëlle

unread,
Jan 4, 2005, 4:29:01 AM1/4/05
to
Bedankt Luc,

Ik krijg inderdaad geen foutmelding meer.
Echter, als ik nu de lengte bepaal van woorden in meerdere cellen, telt
excel alleen de lengte van het woord in de eerste cel. Nog niet opgelost dus
helaas (tenzij ik handmatig invoer lengte (a1&a2&a3&a4.....)

Luc Heyndrickx

unread,
Jan 4, 2005, 4:44:24 AM1/4/05
to
Invoeren als matrix-formule.

Luc

"Mariëlle" <Mar...@discussions.microsoft.com> schreef in bericht

news:1354D697-0CB8-47C0...@microsoft.com...

Mariëlle

unread,
Jan 4, 2005, 4:47:01 AM1/4/05
to
Hallo!
Nog één nieuwe vraag over dit onderwerp:
Is het ook mogelijk om het aantal spaties te tellen???

Mariëlle

unread,
Jan 4, 2005, 4:57:01 AM1/4/05
to
wat bedoel je daarmee (anders dan afsluiten met control shift enter want dat
geeft niet het goede resultaat)?

Piet Robe

unread,
Jan 4, 2005, 5:21:25 AM1/4/05
to
Beste Marielle,
Natturlijk is dat mogelijk alleen dan moet je de letter
vervangen door het gewenste leesteken en dat is voor de
spatie eenmaal drukken op de spatiebalk.

met vriendelijke groet
Piet Robe
>-----Oorspronkelijk bericht-----

>Hallo!
>Nog één nieuwe vraag over dit onderwerp:


>Is het ook mogelijk om het aantal spaties te tellen???
>

>"Mariëlle" wrote:
>
>> Bedankt Luc,
>>
>> Ik krijg inderdaad geen foutmelding meer.
>> Echter, als ik nu de lengte bepaal van woorden in
meerdere cellen, telt
>> excel alleen de lengte van het woord in de eerste cel.
Nog niet opgelost dus
>> helaas (tenzij ik handmatig invoer lengte
(a1&a2&a3&a4.....)
>>

>> "Mariëlle" wrote:
>>
>> > Goede morgen Luc,
>> >
>> > Ik heb jouw formule geprobeerd want ben erg

geïnteresseerd in het tellen

>> > over meerdere cellen heen. Echter, de lengte
(a1:a100) werkt bij mij niet.
>> > Ik krijg de melding #waarde!.
>> > Enig idee hoe dat kan komen?
>> > Bedankt
>> > Groeten

>> > Mariëlle

>> > > >> Hoi Mariëlle,


>> > > >>
>> > > >> Inderdaad hoofdlettergevoelig.
>> > > >>
>> > > >> Gebruik deze formule... en in Cel B1 zet je
altijd een kleine letter.
>> > > >>

>> > > >> =SOM(LENGTE(A1)-LENGTE(SUBSTITUEREN
(KLEINE.LETTERS(A1);B1;"")))
>> > > >>
>> > > >> Luc
>> > > >>
>> > > >>

>> > > >> "Mariëlle" <Mar...@discussions.microsoft.com>
schreef in bericht
>> > > >> news:4C8094E8-C66E-4C47-B89E-
D08153...@microsoft.com...


>> > > >>> Hoi Luc,
>> > > >>>
>> > > >>> Bedankt, ik was het net aan het proberen maar
krijg niet de goede
>> > > >>> uitkomst.
>> > > >>> Enig idee hoe dat kan?
>> > > >>> Cel A1 had de tekst: Arroseerhetvleesregelmatig
>> > > >>> Cel B1 had de a
>> > > >>>
>> > > >>> Misschien is het hoofdletter gevoelig?
>> > > >>> Zal het nog eens proberen. Dank voor je snelle
reactie!
>> > > >>> Groeten

>> > > >>> Mariëlle
>> > > >>>
>> > > >>> "Luc Heyndrickx" schreef:
>> > > >>>
>> > > >>>> Mariëlle,


>> > > >>>>
>> > > >>>> Wat een toeval... 1 uur geleden vroeg Piet
Robe identiek hetzelfde:
>> > > >>>>
>> > > >>>> In cel A1 staat de tekst.
>> > > >>>> In B1 het lettertje dat je wil tellen.
>> > > >>>>
>> > > >>>> Deze formule heb je nodig:
>> > > >>>> =SOM(LENGTE(A1)-LENGTE(SUBSTITUEREN
(A1;B1;"")))
>> > > >>>>
>> > > >>>> Luc
>> > > >>>>
>> > > >>>>
>> > > >>>>

>> > > >>>> "Mariëlle"
<Mariël...@discussions.microsoft.com> schreef in bericht
>> > > >>>> news:56F7CB42-321F-4EFB-B34A-
378A95...@microsoft.com...


>> > > >>>> > Hoe kan ik het aantal keer dat een letter
in een test (word) of in
>> > > >>>> > een cel
>> > > >>>> > (excel) voorkomt laten tellen met een
formule?
>> > > >>>>
>> > > >>>>
>> > > >>>>
>> > > >>
>> > > >>
>> > > >
>> > > >
>> > >
>> > >
>> > >

>.
>

Mariëlle

unread,
Jan 4, 2005, 5:33:01 AM1/4/05
to
Hoi Piet

Bedankt, wat er echter gebeurt als je meerdere cellen samenvoegt (=lengte(a1
& a2...)), dat alle spaties wegvallen (zelfs de spaties tussen woorden binnen
1 cel). Dan werkt zo'n formule dus niet helaas.

Luc Heyndrickx

unread,
Jan 4, 2005, 5:41:44 AM1/4/05
to
Omdat als de formule geen matrix-formule is, je inderdaad alleen de letters
van de eerste cel telt.
U doet dus iets fout.

Kijk eens in je formulebalk. Daar moet dit staan:

{=SOM(LENGTE(A1:A100)-LENGTE(SUBSTITUEREN(A1:A100;B1;"")))}

Dus de volledige formule tussen Accolades.

Deze accolades mag je er niet zelf bij typen, die komen automatisch indien
je de formule juist invoert.

Luc

"Mariëlle" <Mar...@discussions.microsoft.com> schreef in bericht

news:432D80AD-FA81-49A1...@microsoft.com...

Mariëlle

unread,
Jan 4, 2005, 6:15:02 AM1/4/05
to
Sorry Luc maar dt werkt echt niet!

Luc Heyndrickx

unread,
Jan 4, 2005, 6:37:56 AM1/4/05
to
Wordt dus een welles-nietes spelletje.
Hier het bewijs:

http://users.skynet.be/onderland/LettersTellen.zip

Luc


"Mariëlle" <Mar...@discussions.microsoft.com> schreef in bericht

news:663D882A-1D51-44C5...@microsoft.com...

Mariëlle

unread,
Jan 4, 2005, 8:37:05 AM1/4/05
to
Hoi Luc, bedankt. Nu weet ik waarom het bij mij niet kon: als ik een
dollarteken heb staan in de selectie (lengte(a$1:z$1)) (dat deed ik om de
formule te kunnen kopiëren naar beneden), dan werkt de formule niet. Anders
wel.
Bedankt!
Message has been deleted
0 new messages