Crear una máscara de entrada en un TextBox, para introducción de fechas.
Sólo deberemos de preocuparnos de introducir las dos cifras correspondientes al día (dd) y las
dos cifras correspondientes al mes (mm). Las barras separadoras y el año (..../..../2000) se introducen automáticamente, tomando como referencia el año actual. Sirve para rellenar rápidamente un campo de fecha que no corresponda a la fecha actual, pero que este dentro del mismo año (ejemplo: fecha de ingreso de un paciente que se introduce en el momento de su alta hospitalaria).
Siga los pasos siguientes:
1) Cree una variable pública de tipo entero en un formulario o en un módulo y llámela por ejemplo, Contador:
Public Contador As Integer.
2) Introduzca un TextBox en el formulario y llámele por ejemplo, txtFecha.
3) En el evento KeyPress del TextBox, escriba el código siguiente:
Private Sub txtFecha_KeyPress(KeyAscii As Integer)
Máscara de entrada para fecha:
Dim AñoActual As String
AñoActual = Year(Date)
'Sólo se permite la entrada de cifras o retroceso.
If (KeyAscii < 48 Or KeyAscii > 57) And KeyAscii <> 47 Then
If KeyAscii <> 8 Then
KeyAscii = 0
Beep
Else
contador = contador - 1
End If
Else
contador = contador + 1
End If
If contador = 2 And Len(txtFecha.Text) = 1 And txtFecha.SelStart = 1 Then
SendKeys "{/}"
End If
If contador = 5 And Len(txtFecha.Text) = 4 And txtFecha.SelStart = 4 Then
SendKeys "{/}" & AñoActual
End If
End Sub
4) Cree una rutina para poner el Contador a 0, que puede ser al salir del TextBox o en cualquier otro procedimiento de evento que desee
Private Sub txtFecha_LostFocus()
contador = 0
End Sub
               (
geocities.com/es/ensolva/Descargas)                   (
geocities.com/es/ensolva)                   (
geocities.com/es)