¿Cómo calcular la edad antes del 1/1/1900 en Excel?
En Excel, no se puede ingresar ni calcular correctamente una fecha anterior al 1/1/1900. Si deseas calcular la edad de una persona que nació y falleció antes del 1/1/1900, generalmente no obtendrás un cálculo correcto en Excel. Sin embargo, en este artículo, hay un truco que te ayudará a calcular la edad antes del 1/1/1900 en Excel.
Calcular la edad antes del 1/1/1900 con VBA
Calcular la edad por cumpleaños con Kutools para Excel
Calcular la edad antes del 1/1/1900 con VBA
Aquí hay un código VBA que te puede ayudar a calcular rápidamente la edad antes del 1/1/1900.
1. Selecciona una celda en blanco e introduce el cumpleaños de la persona, luego selecciona otra celda para introducir la fecha actual o la fecha de defunción según sea necesario. Ver captura de pantalla:
2. Luego presiona las teclas Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
3. Haz clic en Insertar > Módulo, pega el siguiente código VBA en la nueva ventana de Módulo.
VBA: Calcular la edad antes del 1/1/1900
Public Function AgeFunc(SDate As Variant, EDate As Variant) As Long
'UpdatebyExtendOffice20160429
Dim xSMonth As Integer
Dim xSDay As Integer
Dim xSYear As Integer
Dim xEMonth As Integer
Dim xEDay As Integer
Dim xEYear As Integer
Dim xAge As Integer
If Not GetDate(SDate, xSYear, xSMonth, xSDay) Then
AgeFunc = "Invalid Date"
Exit Function
End If
If Not GetDate(EDate, xEYear, xEMonth, xEDay) Then
AgeFunc = "Invalid Date"
Exit Function
End If
xAge = xEYear - xSYear
If xSMonth > xEMonth Then
xAge = xAge - 1
ElseIf xSMonth = xEMonth Then
If xSDay > xEDay Then xAge = xAge - 1
End If
If xAge < 0 Then
AgeFunc = "Invalid Date"
Else
AgeFunc = xAge
End If
End Function
Private Function GetDate(ByVal DateStr As String, Y As Integer, M As Integer, D As Integer) As Boolean
Dim I As Long
Dim K As Long
Y = 0
M = 0
D = 0
GetDate = True
On Error Resume Next
I = InStr(1, DateStr, "/")
M = CLng(Left(DateStr, I - 1))
D = CLng(Mid(DateStr, I + 1, InStr(I + 1, DateStr, "/") - I - 1))
Y = CLng(Right(DateStr, Len(DateStr) - InStrRev(DateStr, "/")))
If M < 1 Or M > 12 Or D < 1 Or D > 31 Or Y < 1 Then
GetDate = False
End If
End Function
4. Selecciona una celda en blanco, aquí es C2, e introduce esta fórmula =AgeFunc(A2,B2) (A2 es el cumpleaños, y B2 es la fecha final), y presiona Enter para obtener la edad, y arrastra el controlador de autocompletar sobre las celdas que necesites. Ver captura de pantalla:
Nota: Este VBA solo puede calcular edades con fechas en el formato mm/dd/aaaa, como 23/6/1845.
Calcular la edad por cumpleaños con Kutools para Excel
Si las fechas de cumpleaños son normalmente posteriores al 1/1/1900, puedes aplicar la utilidad Date & Time helper de Kutools para Excel, que puede calcular rápidamente la edad a partir de los cumpleaños proporcionados.
Después de instalar gratuitamente Kutools para Excel, por favor haz lo siguiente:
1. Selecciona una celda en blanco donde deseas mostrar la edad, y haz clic en Kutools > Asistente de fórmulas > Date & Time helper. Ver captura de pantalla:
2. Luego en el Date & Time helper diálogo, marca la opción Edad, selecciona el cumpleaños en el que deseas basar el cálculo de la edad en el cuadro de texto Fecha de Nacimiento Por defecto, la celda será seleccionada como referencia absoluta, puedes cambiarla a referencia relativa, luego marca la opción Hoy y elige el tipo de resultado que deseas mostrar en la lista desplegable de Tipo de resultado de salida. Ver captura de pantalla:
3. Haz clic en Aceptar para aplicar esta fórmula, y ahora puedes ver que la edad se ha mostrado. Y si es necesario, puedes arrastrar el controlador de autocompletar sobre las celdas que necesiten esta fórmula. Ver captura de pantalla:
Las mejores herramientas de productividad para Office
Potencia tus habilidades en Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...
Office Tab lleva la interfaz de pestañas a Office y facilita mucho tu trabajo
- Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abre y crea varios documentos en nuevas pestañas de la misma ventana, en lugar de nuevas ventanas.
- ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!