Van Demeter onderstaande code, in een nieuwe post, zodat iedereen kan profiteren van dit stukje!
Op de volgende manier krijg je in een textbox alleen de invoer van een datum!
Jarodxxx,
Eigenlijk had je een nieuwe vraag moeten beginnen, zodat deze info niet verdwijnt onder een vreemde titel.
Heb de code van Wigi uitgebreid, met dank aan de jongens van Ozgrid: http://www.ozgrid.com/forum/showthre...t=date+textbox
Je kan het op twee manieren doen.
1e zoals Wigi voorstelt:
Code:
Deze controleerd de invoer in TextBox1 nadat er uit het vak wordt gegaan (bv mbv de Tab-toets)
Volgende code controleert na het drukken op de CommandButton1 de data. Bij juistheid wordt de code uitgevoerd bij onjuistheid komt er een msg box en wordt de code verlaten.
Code:
Succes.
__________________
Op de volgende manier krijg je in een textbox alleen de invoer van een datum!
Jarodxxx,
Eigenlijk had je een nieuwe vraag moeten beginnen, zodat deze info niet verdwijnt onder een vreemde titel.
Heb de code van Wigi uitgebreid, met dank aan de jongens van Ozgrid: http://www.ozgrid.com/forum/showthre...t=date+textbox
Je kan het op twee manieren doen.
1e zoals Wigi voorstelt:
Code:
Code:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Left(TextBox1.Value, 2) > 31 Or Mid(TextBox1.Value, 4, 2) > 12 Then
MsgBox "Onjuiste datum, vul opnieuw in A.U.B.? (dd/mm/jjjj)", vbCritical
TextBox1.Value = vbNullString
TextBox1.SetFocus
Exit Sub
End If
dDate = DateSerial(Year(Date), Month(Date), Day(Date))
TextBox1.Value = Format(TextBox1.Value, "dd/mm/yyyy")
End Sub
Volgende code controleert na het drukken op de CommandButton1 de data. Bij juistheid wordt de code uitgevoerd bij onjuistheid komt er een msg box en wordt de code verlaten.
Code:
Code:
Dim dDate As Date
Private Sub CommandButton1_Click()
Range("G1").Value = dDate
Me.Hide
End Sub
Code:
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
If Left(TextBox1.Value, 2) > 31 And Mid(TextBox1.Value, 4, 2) > 12 Then
MsgBox "Onjuiste datum, vul opnieuw in A.U.B.? (dd/mm/jjjj)", vbCritical
TextBox1.Value = vbNullString
TextBox1.SetFocus
Exit Sub
End If
dDate = DateSerial(Year(Date), Month(Date), Day(Date))
TextBox1.Value = Format(TextBox1.Value, "dd/mm/yyyy")
dDate = TextBox1.Value
End Sub
__________________