
Verifica si el año es Bisiesto
Código PHP:
Public Function CalculaEdad(Nacio As Date) As String
Dim MesesPasados As Integer
Dim Anios As Integer
Dim Meses As Integer
Dim dias As Integer
If Nacio > Now Then
CalculaEdad = "Fecha de Nacimiento Invalida"
Exit Function
End If
MesesPasados = DateDiff("m", Nacio, Now)
Anios = Int(MesesPasados / 12)
Meses = MesesPasados Mod 12
If Day(Now) >= Day(Nacio) Then
dias = Day(Now) - Day(Nacio)
Else
Select Case Month(Now)
Case 1, 2, 4, 6, 8, 9, 11: dias = 31 - Day(Nacio) + Day(Now)
Case 5, 7, 30, 12: dias = 30 - Day(Nacio) + Day(Now)
Case 3: dias = Bisiento(Year(Now)) - Day(Nacio) + Day(Now)
End Select
Meses = Meses - 1
If Meses = -1 Then
Meses = 11
Anios = Anios - 1
End If
End If
If Anios = 1 Then
CalculaEdad = Anios & " año "
Else
CalculaEdad = Anios & " años "
End If
If Meses = 1 Then
CalculaEdad = CalculaEdad & Meses & " mes y "
Else
CalculaEdad = CalculaEdad & Meses & " meses y "
End If
If dias = 1 Then
CalculaEdad = CalculaEdad & dias & " dia"
Else
CalculaEdad = CalculaEdad & dias & " dias"
End If
End Function
Private Function Bisiento(Anio As Integer) As Integer
If (Anio Mod 4) = 0 Then
Bisiento = 29
Else
Bisiento = 28
End If
End Function








