Compartilhar via

calculo da idade no access partindo da data de nascimento

Anônima
2010-01-27T20:18:03+00:00

olá

como calcular a idade de uma pessoa tendo a data de nascimento no access?

obrigado

célio

Microsoft 365 e Office 365 | Instalar, resgatar, ativar | Para uso doméstico | Outro

Pergunta bloqueada. Essa pergunta foi migrada da Comunidade de Suporte da Microsoft. É possível votar se é útil, mas não é possível adicionar comentários ou respostas ou seguir a pergunta.

0 comentários Sem comentários

Resposta aceita pelo autor da pergunta

Anônima
2010-02-02T17:07:36+00:00

Célio é o seguinte:

O 1º passo: na tabela do banco de dados, abrir um campo tipo Data legenda Data Aniversário, em seguinda Data Atua =Data(), depois abrir um campo Dias numérico, padrão, automático ou não (até 3 casas decimais), em seguinda outro campo Idade da mesma forma que o campo anterior.

2º passo: no campo Dias será inserido a seguinte expressão: =Data()-[Data Aniversário], e depois no campo idade inserir a seguinte expressão: =[Dias]/365, e ai você terá número de dias de vida e no outro a idade.

Se assim ajudou, valeu!

Esta resposta foi útil?

20+ pessoas acharam esta resposta útil.
0 comentários Sem comentários

Resposta aceita pelo autor da pergunta

Anônima
2010-01-29T10:55:26+00:00

Bom dia Celio,

No formulário:

Function CalculaIdade(DataNasc As Variant) As Variant

''Recebe a DataNasc e devolve a Idade em Anos

On Error GoTo Idade_Err

''Evita o erro de data não preenchida

If IsNull(DataNasc) Then

CalculaIdade = ""

Exit Function

End If

''Declarando Variáveis

Dim DataHoje As Variant, DiaHoje As Integer

Dim MesNasc As Integer, DiaNasc As Integer

Dim DifAnos As Integer, MesHoje As Integer

''Isola as partes (dia/mês) das duas datas

DiaHoje = DatePart("d", Now)

MesHoje = DatePart("m", Now)

DiaNasc = DatePart("d", DataNasc)

MesNasc = DatePart("m", DataNasc)

''Calcula a diferença de anos

DifAnos = DateDiff("yyyy", DataNasc, Now)

''Verifica dia/mês de nascimento

If MesHoje < MesNasc Then

DifAnos = DifAnos - 1

ElseIf MesHoje = MesNasc Then

If DiaHoje < DiaNasc Then

DifAnos = DifAnos - 1

End If

Else

End If

''Valor final da função

CalculaIdade = DifAnos

Idade_Fim:

Exit Function

Idade_Err:

MsgBox Err.Description

Resume Idade_Fim

End Function

Na caixa de texto que vai receber o cálculo da idade (nas Propriedades do controle, em Dados, em Origem do controle):

=CalculaIdade([DataNasc])

(Caso resolva, não esqueça de marcar como resposta)


Espero ter ajudado

Thiago Sobreira MCP+MCTS+MCITP

Profissional 5 estrelas Windows Server 2008 + Windows Vista

Esta resposta foi útil?

10+ pessoas acharam esta resposta útil.
0 comentários Sem comentários

0 respostas adicionais

Classificar por: Mais útil