Hoi,
Ik zou graag het aantal getallen (dus niet cijfers) tellen in een string De string staat in een tekstvak. Als het tekstvak verandert dan moet de waarde van het aantal cijfers in een ander tekstvak komen te staan. Omdat ik niet weet hoe ik getallen die voorkomen in een string moet tellen, heb ik voor een suboptimale oplossing gekozen. Ik vraag de gebruiker van de database om de getallen te scheiden met een "+". De vraag is dus nu: "Ik wil het aantal '+'-jes tellen in de string die in het tekstvak c_cd staat en die wegschrijven in het tekstvak d_at. (Het aantal '+'-jes + 1 = aantal getallen).
Ik heb hiervoor de volgende VBA-code geschreven:
Private Sub d_cd_Dirty(Cancel As Integer)
Dim count As Integer
count = 1
Position = 1
Do While InStr(Position, Me!d_cd, "+")
Position = InStr(Position, Me!d_cd, "+") + 1
count = count + 1
Loop
Me!d_at.Value = count
End Sub
Dit zou toch moeten werken? Maar de uitkomst klopt niet en bovendien beinvloed deze procedure ook het gedrag van de invoer in tekstvak d_cd. Wat doe ik fout? Iemand een idee?
Groeten Rob
Ik zou graag het aantal getallen (dus niet cijfers) tellen in een string De string staat in een tekstvak. Als het tekstvak verandert dan moet de waarde van het aantal cijfers in een ander tekstvak komen te staan. Omdat ik niet weet hoe ik getallen die voorkomen in een string moet tellen, heb ik voor een suboptimale oplossing gekozen. Ik vraag de gebruiker van de database om de getallen te scheiden met een "+". De vraag is dus nu: "Ik wil het aantal '+'-jes tellen in de string die in het tekstvak c_cd staat en die wegschrijven in het tekstvak d_at. (Het aantal '+'-jes + 1 = aantal getallen).
Ik heb hiervoor de volgende VBA-code geschreven:
Private Sub d_cd_Dirty(Cancel As Integer)
Dim count As Integer
count = 1
Position = 1
Do While InStr(Position, Me!d_cd, "+")
Position = InStr(Position, Me!d_cd, "+") + 1
count = count + 1
Loop
Me!d_at.Value = count
End Sub
Dit zou toch moeten werken? Maar de uitkomst klopt niet en bovendien beinvloed deze procedure ook het gedrag van de invoer in tekstvak d_cd. Wat doe ik fout? Iemand een idee?
Groeten Rob