Ver Mensaje Individual
  #5 (permalink)  
Antiguo 03/11/2008, 02:18
Avellaneda
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Respuesta: Obterner edad por medio de la fecha

Cita:
Iniciado por franko1809 Ver Mensaje
Tio prodria se asi coloca 4 cajas de texto y un command eso te puede resolver el problema por ahora y para q tengas una idea de como hacerlo

Código:
Private Sub Form_Load()
Text1 = Year(Date) 'Extraigo el año de la fecha actual del sistema
Text2 = "18/9/1985" 'Fecha de nacimiento
End Sub

Private Sub Command1_Click()
Text3 = Right(Text2, 4) ' Extraigo 4 caracteres desde la derecha, el año
Text4 = Val(Text1) - Val(Text3)
End Sub
Bueno, esa es una forma de hacerlo, pero no es correcta del todo.
p.e. si le pongo la fecha de nacimiento "18/11/1995" me dá como resultado 23 años, cuando todavía no los ha cumplido.

Otra opción es una función como ésta:

Código:
Function CalculaEdad(ByVal DataIni As Date) As Integer
CalculaEdad = DateDiff("yyyy", DataIni, Date)

If (Month(DataIni) > Month(Date)) Or (Month(DataIni) = Month(Date) _
    And Day(DataIni) > Day(Date)) Then CalculaEdad = CalculaEdad - 1
End Function
para llamarla y comprobar el resultado:

Código:
Private Sub Command1_Click()
Dim iAños As Integer
iAños = CalculaEdad(Text1)
MsgBox iAños
End Sub