Como calcular a idade antes de 1/1/1900 no Excel?
No Excel, a data anterior a 1/1/1900 não pode ser inserida e calculada corretamente. Se você deseja calcular a idade de uma pessoa que nasceu e faleceu antes de 1/1/1900, geralmente não obterá o cálculo correto no Excel. No entanto, neste artigo, um truque pode ajudá-lo a calcular a idade antes de 1/1/1900 no Excel.
Calcular a idade antes de 1/1/1900 com VBA
Calcular a idade pelo aniversário com Kutools para Excel
Calcular a idade antes de 1/1/1900 com VBA
Aqui está um código VBA que pode ajudá-lo a calcular rapidamente a idade antes de 1/1/1900.
1. Selecione uma célula em branco e insira o aniversário da pessoa, e depois selecione outra célula para inserir a data de hoje ou a data da morte da pessoa, conforme necessário. Veja a captura de tela:
2. Em seguida, pressione as teclas Alt + F11 para habilitar a janela do Microsoft Visual Basic for Applications.
3. Clique em Inserir > Módulo, cole o seguinte VBA na nova janela do Módulo.
VBA: Calcular a idade antes de 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. Selecione uma célula em branco, aqui é C2, e insira esta fórmula =AgeFunc(A2,B2) (A2 é o aniversário, e B2 é a data final), e pressione Enter para obter a idade, e arraste a alça de preenchimento automático sobre as células que você precisa. Veja a captura de tela:
Observação: Este VBA só pode calcular idades com datas no formato mm/dd/aaaa, como 23/6/1845.
Calcular a idade pelo aniversário com Kutools para Excel
Se as datas de aniversário forem normalmente após 1/1/1900, você pode aplicar a utilidade Date & Time helper do Kutools para Excel, que pode calcular rapidamente a idade pelos aniversários fornecidos.
Após instalar gratuitamente o Kutools para Excel, por favor, faça o seguinte:
1. Selecione uma célula em branco onde deseja exibir a idade, e clique em Kutools > Assistente de Fórmulas > Date & Time helper. Veja a captura de tela:
2. Depois, na janela do Date & Time helper diálogo, marque a opção Idade, selecione o aniversário que deseja usar para calcular a idade baseada na caixa de texto Data de Nascimento Por padrão, a célula será selecionada como referência absoluta, mas você pode alterá-la para referência relativa, depois marque a opção Hoje e escolha um tipo de resultado que deseja exibir na lista suspensa de Tipo de Resultado de Saída. Veja a captura de tela:
3. Clique em Ok para aplicar esta fórmula, e agora você pode ver que a idade foi exibida. E se necessário, você pode arrastar a alça de preenchimento automático sobre as células que precisam desta fórmula. Veja a captura de tela:
Melhores Ferramentas de Produtividade para Office
Potencialize suas habilidades no Excel com o Kutools para Excel e experimente uma eficiência sem igual. O Kutools para Excel oferece mais de300 recursos avançados para aumentar sua produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
O Office Tab traz interface com abas para o Office e facilita muito o seu trabalho
- Habilite a edição e leitura com abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas abas na mesma janela, em vez de abrir novas janelas.
- Aumente sua produtividade em50% e reduza centenas de cliques do mouse todos os dias!