Visual Basic - validar fecha

Life is soft - evento anual de software empresarial
 
Vista:

validar fecha

Publicado por m.san (8 intervenciones) el 06/11/2001 22:24:48
El problema que tengo es que en mi formulario tengo un textbox, donde le debo de teclear la fecha dd/mm/yy, pero no se como validarla, si introduzco la fecha con ese formato, fecha válida si la acepta, pero si yo en el mes le pongo mes 13 ( que no existe), me lo acepta, y si la fecha yo se la tecleo completa, por ejemplo: 06 de noviembre del 2001 me marca error en tiempo de ejecucion.

Como puedo validarla que al momento de guardar la información, no me acepte un mes 13, ni la fecha completa 06 de noviembre del 2001, ya que yo la quiero dd/mm/yy.

Gracias por su ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:validar fecha

Publicado por Mauricio Baeza (60 intervenciones) el 07/11/2001 02:13:02
Usa la función IsDate(fecha) que te devuevle verdadero si la expresión pasada la puede evaluar como una fecha, deja que el usuario la capture como quiera, solo recomiendale como, despues validas que sea una fecha y si es correcta la envias a tu variable de fecha, la cual, despues, la puedes mostrar en el formato que quieras como dd/mm/yy

ejemplo:

Dim strFecha As String
Dim datFecha As Date

strFecha = Trim ( txtFecha.Text )
If IsDate ( strFecha ) Then
datFecha = CDate(strFecha)
Else
MsgBox "Fecha incorrecta"
txtFecha.SetFocus
End If
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:validar fecha

Publicado por Fran (114 intervenciones) el 07/11/2001 03:55:59
(La fecha se teclea sin los separadores)
Private sub fecha_lostfocus()
dim fecha1 as date
fecha.text=Format(fecha, "##-##-##")
on error resume next
fecha1=fecha.text
if not isdate(fecha.text) or right(fecha,2) <> right(date,2) or mId(fecha,4,2) > 12 then
msgbox "Error en el mes tecleado.- Repita"
------------------
Creo que detecta hasta el error por año bisiesto; pruébalo.
Un saludo

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:validar fecha

Publicado por Fran (114 intervenciones) el 07/11/2001 19:02:55
Otro código mejor:
Private Sub fecha_LostFocus()
Dim fecha2 as date
fecha.Text = Format(fecha, "##-##-##")
On Error GoTo mil
fecha2 = fecha.Text
If Left(fecha, 2) <> Left(fecha2, 2) Then GoTo mil
If Right(fecha, 2) <> Right(Date, 2) Then GoTo milcien
Exit Sub
mil:
MsgBox "Error de tecleo.-"
fecha.SetFocus
Exit Sub
milcien:
If MsgBox("¿Es correcto el año expresado.?", 68) = 7 Then
fecha.SetFocus
Exit Sub
End If

End Sub
Espero ayudarte.- Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:validar fecha

Publicado por pancho (11 intervenciones) el 07/11/2001 19:30:38
aqui tienes un control para para acceptar fechas

http:\\www.silared.com\usuarios\visualbasic\index.txt
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar