Visual Basic.NET - Validar fecha en textbox?

 
Vista:

Validar fecha en textbox?

Publicado por cris M. (58 intervenciones) el 14/10/2004 16:12:06
Debo introducir dos fechas por teclado en dos diferentes textbox
quiero ver si se introducido en formato correcto la fecha ademas estos campos no pueden estar vacios.
Cual seria las modificaciones a la siguiente linea de codigo para validar

If txtFechaInicio.Text <> "" And TxtFechaFin.Text <> "" And
FechaInicio.Text < Me.TxtFechaFin.Text Then

Como puedo asegurar que el dato que se introduce por teclado sea del formato de tipo fecha.

Muchas 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 en textbox?

Publicado por rerunch (165 intervenciones) el 14/10/2004 16:23:31
y porque no utilizas el datetimepicker
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 en textbox?

Publicado por Edgar (1501 intervenciones) el 14/10/2004 16:53:24
Hola

Una opción es usar expresiones regulares (clase regex) con esa puedes ver si una cadena está en un formato especifico

Otra opción es intentar hacer una conversión del texto a date (datetime.parse), si lanza una excepción es porque no es de tipo fecha

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:Gracias por responder PERO

Publicado por cris M. (58 intervenciones) el 14/10/2004 21:30:53
Gracias por responder rerunch y Omar
intento utilizar dos datetimerpicker() pero no puedo comparar las dos fechas selecionadas, ademas la fecha final deber ser menor o igual a la fecha actual

fecha_inicio <= fecha_fin and fecha_fin< =datetime.now

gracias por su ayuda
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:Gracias por responder PERO

Publicado por rerunch (165 intervenciones) el 14/10/2004 21:47:45
fijate en el formato que te entrega el datetime.now seguro que es diferente al de los datetimerpicker, si tienes los datetimep.. en fecha short prueba conpararlo con DateTime.Now.ToShortDateString
suerte.
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:Gracias por responder PERO

Publicado por omar (38 intervenciones) el 14/10/2004 21:51:02
Hola cris la forma de validar dos fechas es sencilla:
If DateTimePicker1.Value <= DateTimePicker2.Value Then
MsgBox("2")
Else
MsgBox("1")
End If
eso lo puedes poner en el mismo evento del dtp si asi lo deseas
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:Por que no funciona

Publicado por cris M. (58 intervenciones) el 14/10/2004 23:09:28
Gracias por responder
Hice lo que me enviaste Omar pero cuando las fechas son iguales no realiza lo correcto.
si Dtfin= 14,oct,2004 y fecha Actual es 14,oct,2004
sale como si DTfin fuera mayor que la fecha actual.

el codigo es asi:

If Me.DTfin.Value <= Date.Now.ToString("dd,MMM,yyyy") Then

Para aclarar solo falla cuando las fechas son iguales si son diferentes la comparacion es correcta.

gracias por toda la ayuda que me brindan
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:Por que no funciona

Publicado por omar (38 intervenciones) el 15/10/2004 18:09:35
intenta dandole formatos iguales lo que puede estar pasando es que te cuenta tambien la hora o algo por el estilo asi mira ya lo probe y si sale...

Dim f1 As Date = Microsoft.VisualBasic.FormatDateTime(DateTimePicker1.Value, DateFormat.ShortDate)
Dim f2 As Date = Microsoft.VisualBasic.FormatDateTime(DateTimePicker2.Value, DateFormat.ShortDate)

If f1 < f2 Then
MsgBox("dtm2")
ElseIf f1 = f2 Then
MsgBox("iguales")
Else
MsgBox("dtm1")
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 en textbox?

Publicado por krols (1 intervención) el 25/01/2007 02:39:41
yo valide atraves de la siguiente funcion.

Private Function validaFecha(ByVal Cadena As String) As Boolean
Try
Date.Parse(Cadena)
validaFecha = True

Catch ex As Exception

validaFecha = False
End Try

End Function

espero te funcione.
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