Pregunta: | 64521 - INPUTBOX CON FORMATO FECHA |
Autor: | Luis Ortiz |
Tengo un INPUTBOX donde el usuario debe digitar una fecha. Cómo sería el código para que al ingresar la fecha dd/mm/aa el usuario no tenga que escribir los símbolos "/" |
Respuesta: | Fernando Fumero |
Si el usuario solo digita los numero y no los /, por ejemplo si deseamos introducir la fecha 02/09/1965, el usuario solo digitará 01091965, luego nosotros le agregamos los / en las posiciones correctas y validamos la fecha, así:
Option Explicit Dim AUX_FECHA As String Private Sub Command1_Click() AUX_FECHA = InputBox("Digite la fecha, solo números." & vbCrLf & "(Ejempo: 02/09/1965 = 02091965)", "Fecha") MsgBox VALIDAR(AUX_FECHA), vbInformation, "La Fecha" End Sub Friend Function VALIDAR(X_FECHA As String) As String Dim LINEA As String Dim X_DIA As String Dim X_MES As String Dim X_ANO As String LINEA = "" If Not IsNumeric(X_FECHA) Then LINEA = LINEA & "- Solo digite los 8 números." & vbCrLf Else If Len(X_FECHA) = 8 Then X_DIA = Left(X_FECHA, 2) X_MES = Mid(X_FECHA, 3, 2) X_ANO = Right(X_FECHA, 4) If Not IsDate(X_DIA & "/" & X_MES & "/" & X_ANO) Then LINEA = LINEA & "- La fecha está fuera de rango." & vbCrLf Else LINEA = LINEA & "- Fecha mal digitada, tienen que ser 8 dígitos." & vbCrLf End If End If If LINEA = "" Then VALIDAR = X_DIA & "/" & X_MES & "/" & X_ANO Else VALIDAR = LINEA End Function Cortesía de FUMERO CORP. - [email protected] - |