bitchkoemer
Gebruiker
- Lid geworden
- 3 aug 2006
- Berichten
- 39
Hallo Execel Goeroes,
Telkens ik een probleem oplos biedt zich een nieuw aan, geen probleem, zo leer ik veel bij......
Ik haal een gewijzigde cel binnen via "Sub Worksheet_Change(ByVal Target As Range)"
In deze cel mag de gebruiker verschillende zaken invoeren:
- Hij mag alfanumerieke invoer doen in de vorm van Xx, Zz of Rr (dus Z4, R8, X2 zijn geldige invoer), deze invoer handel ik af in AlfaInvoer() en werkt perfect
- Hij mag numerieke waarden invoeren maar enkel in het ":mm" format, dit probeer ik te ondervangen met 'If Target.NumberFormat = "hh:mm" Then' maar dit lijkt niet te lukken
- Hij mag geen "gewone" numerieke waarden invullen, dus 1, 3 ,-12 enz. mogen niet, als bovenstaande werkt hoef ik hiervoor niets te doen, als het geen Alfanumerieke of :mm invoer is, is het niet goed.
Ik plak hier een stukje uit mijn code waarin ik de invoer wil filteren.
Weet er iemand hoe ik de invoer in :mm formaat kan "filteren"?
Alvast bedankt,
Telkens ik een probleem oplos biedt zich een nieuw aan, geen probleem, zo leer ik veel bij......
Ik haal een gewijzigde cel binnen via "Sub Worksheet_Change(ByVal Target As Range)"
In deze cel mag de gebruiker verschillende zaken invoeren:
- Hij mag alfanumerieke invoer doen in de vorm van Xx, Zz of Rr (dus Z4, R8, X2 zijn geldige invoer), deze invoer handel ik af in AlfaInvoer() en werkt perfect
- Hij mag numerieke waarden invoeren maar enkel in het ":mm" format, dit probeer ik te ondervangen met 'If Target.NumberFormat = "hh:mm" Then' maar dit lijkt niet te lukken
- Hij mag geen "gewone" numerieke waarden invullen, dus 1, 3 ,-12 enz. mogen niet, als bovenstaande werkt hoef ik hiervoor niets te doen, als het geen Alfanumerieke of :mm invoer is, is het niet goed.
Ik plak hier een stukje uit mijn code waarin ik de invoer wil filteren.
Code:
'-- controleer of de cel werd gewist, zoja doe niets.
If Target.Value = "" Then
'-- controleer of er een numerieke waarde wordt ingevoerd
ElseIf IsNumeric(Target.Value) = False Then
'-- check de alfanumerieke syntax en verwerp foutieve alfanumerieke invoer
Call AlfaInvoer(Target)
'-- er werd een numerieke waarde ingevuld (ook "hh:mm" is een numerieke waarde)
Else
'-- controleer of er een tijd werd ingevoerd in het "[u]:mm" formaat
If Target.NumberFormat = "hh:mm" Then
MsgBox "U voerde een tijd in"
Call TijdInvoer(Target)
Else
MsgBox "u voerde geen alfanumerieke waarde of tijd in"
Target.Value = ""
End If
End If
Weet er iemand hoe ik de invoer in :mm formaat kan "filteren"?
Alvast bedankt,