Visual Basic - validafechas

Life is soft - evento anual de software empresarial
 
Vista:

validafechas

Publicado por Juanpe (19 intervenciones) el 07/06/2005 12:49:07
la funcion es la de validafechas que se a colgado en la pagina, pero la funcion IsDate hace lo mismo no?gracias

Function ValidaFecha(ByRef wFecha As String) As Boolean
Dim wValores(3) As String
Dim wPos As Integer
Dim wI As Integer

ValidaFecha = True
If Not IsDate(wFecha) Or Len(wFecha) < 10 Then
ValidaFecha = False
Exit Function
End If
wPos = 1
For wI = 1 To Len(wFecha)
If Mid(wFecha, wI, 1) = "/" Or Mid(wFecha, wI, 1) = "-" Then
wPos = wPos + 1
Else
wValores(wPos) = wValores(wPos) & Mid(wFecha, wI, 1)
End If
Next wI
If Val(wValores(1)) = 0 Or Val(wValores(2)) = 0 Or Val(wValores(3)) = 0 Or _
Val(wValores(2)) > 12 Or Val(wValores(1)) > 31 Then
ValidaFecha = False
Exit Function
End If
'***** Validar el Dia del Mes
Select Case Val(wValores(2))
Case 2
If Val(wValores(3)) Mod 4 = 0 Then
If Val(wValores(1)) > 29 Then ValidaFecha = False
Else
If Val(wValores(1)) > 28 Then ValidaFecha = False
End If
Case 1, 3, 5, 7, 8, 10, 12
If Val(wValores(1)) > 31 Then ValidaFecha = False
Case 4, 6, 9, 11
If Val(wValores(1)) > 30 Then ValidaFecha = False
End Select
If ValidaFecha Then
wFecha = Format(Val(wValores(1)), "00") & "-" & _
Format(Val(wValores(2)), "00") & "-" & _
Format(Val(wValores(3)), "0000")
End If
End Function
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