Ik heb een opdracht voor school waar ik invoercontroles op tekstvakjes moet zetten.
Het gaat om 2 controles:
1: Kijken of er wel een getal ingevoerd word, het eerste teken mag ook plus, min, komma en punt zijn en het tweede teken dat ingevoerd word mag ook nog een komma of punt zijn maar geen plus en min meer. Daarna mogen het alleen maar getallen zijn.
2: Na het invoeren van een key moet er na de eerste controle nog gecontroleerd worden of er een reël getal ingevoerd is. Dit met de functie IsNumeric().
Ik heb dit in elkaar gezet, het werkt wel maar de controle op + , - . bij 2de en 3de etc invoer is niet goed:
Iemand een idee hoe ik die controle op punt, komma, plus en min goed kan maken zodat ie bijvoorbeeld gelijk een foutmelding geeft als ik bij de 2de invoer een plus geef.
Het gaat om 2 controles:
1: Kijken of er wel een getal ingevoerd word, het eerste teken mag ook plus, min, komma en punt zijn en het tweede teken dat ingevoerd word mag ook nog een komma of punt zijn maar geen plus en min meer. Daarna mogen het alleen maar getallen zijn.
2: Na het invoeren van een key moet er na de eerste controle nog gecontroleerd worden of er een reël getal ingevoerd is. Dit met de functie IsNumeric().
Ik heb dit in elkaar gezet, het werkt wel maar de controle op + , - . bij 2de en 3de etc invoer is niet goed:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
| Public Sub ContrGetal(Toets As Integer, Invoer As String)
If Toets = 8 Then Exit Sub
If Toets < 43 Or Toets > 46 Then
ContrCijfer Toets
If Len(Invoer) <= 1 Then Exit Sub
If IsNumeric(Invoer) Then
Exit Sub
Else
MsgBox "Geen correct getal!", vbCritical, "Let Op!"
Toets = 0
End If
Else
If Len(Invoer) <= 1 Then Exit Sub
If IsNumeric(Invoer) Then
Exit Sub
Else
MsgBox "Geen correct getal!", vbCritical, "Let Op!"
Toets = 0
End If
End If
End Sub |
Iemand een idee hoe ik die controle op punt, komma, plus en min goed kan maken zodat ie bijvoorbeeld gelijk een foutmelding geeft als ik bij de 2de invoer een plus geef.