Notifications
Clear all

Calculo de idade em anos, meses e dias

9 Posts
4 Usuários
0 Reactions
2,261 Visualizações
(@cvb2004)
Posts: 24
Eminent Member
Topic starter
 

Boa tarde caros amigos do VBA.

Estou desenvolvendo um programinha de cadastro de clientes pra uso pessoal e preciso da informação da idade de cada um deles.
Pra isso, no momento do cadastro, quero informar a data de nascimento e que automaticamente em outro campo apareça sua em idade em anos, meses e dias.

Uma outra informação, esses dados são de cadastro e de consultas posteriores, ou seja, no momento do cadastro ele deve ser cadastrado com a idade atual, e se em algum outro momento eu pesquisar por esse cliente, preciso que mostre a idade dele no momento da pesquisa.
Complicado? Eu já procurei de todas as formas e não consegui esse código, sou iniciante e pelo que ja consegui até aqui me considero um vitorioso, rs

Quem puder me ajudar eu ficaria muito grato.

 
Postado : 04/04/2015 11:08 am
(@mario-l-cremonese)
Posts: 26
Eminent Member
 

Supondo que a data inicial esteja na célula B1 e a data final na célula C1, cole a fórmula abaixo na célula D1.
=DATADIF(B1;C1;"Y")&" anos,"&DATADIF(B1;C1;"m")&" meses e "&(DATADIF(B1;C1;"md")&" dias")

 
Postado : 04/04/2015 11:46 am
(@gilbertol)
Posts: 16
Active Member
 

Excesso de preciosismo, para ficar singular ou plural.
Ainda pode ser melhorado:

em B9= Data nascimento
em A9= Data atual
=DATADIF(B9;$A$9;"Y")&" ano"&SE(DATADIF(B9;$A$9;"Y")>1;"s ";" ")&DATADIF(B9;$A$9;"YM")&" mes"&SE(DATADIF(B9;$A$9;"YM")>1;"es ";" ")&DATADIF(B9;$A$9;"MD")&" dia"&SE(DATADIF(B9;$A$9;"MD")>1;"s ";" ")

 
Postado : 06/04/2015 7:58 pm
(@cvb2004)
Posts: 24
Eminent Member
Topic starter
 

Meu amigo, muito obrigado entendi perfeitamente como fazer isso no excel. Agora estou com dificuldades pra aplicar isso no meu programa VBA
Eu criei uma Label com o titulo Data de nascimento e uma textbox com o campo para aparecer essa data. Criei outra label com o titulo idade e outra textbox com o campo bloqueado para aparecer a idade em Anos, Meses e dias conforme vc explicou. Mas nao to conseguindo colocar isso pra funcionar.
Pode dar uma olhadinha na minha planilha, por favor?

https://drive.google.com/file/d/0B9-0De ... sp=sharing

 
Postado : 07/04/2015 4:15 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Ola,

Veja se esse exemplo te ajuda.

Abs

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 08/04/2015 1:20 pm
(@cvb2004)
Posts: 24
Eminent Member
Topic starter
 

Ola,

Veja se esse exemplo te ajuda.

Abs

Me ajudou muito amigo, mas não é exatamente isso ainda que preciso.
Eu já tenho um campo para inserir a data de nascimento, ao inserir essa data e passar para o próximo campo, gostaria que aparecesse o resultado em anos, meses e dias.
Mas mesmo se eu quisesse aplicar dessa forma que vc me mandou (com botão de comando) eu ainda não consegui aplicar no meu projeto.
Pode me ajudar?
abraço

 
Postado : 08/04/2015 3:02 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite,

Como eu falei é um EXEMPLO, mas através dele você pode adaptar de acordo sua necessidade, basta associar a rotina ao TEXTBOX que desejar e ao evento que voce preferir.

Abraço

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 08/04/2015 4:05 pm
(@cvb2004)
Posts: 24
Eminent Member
Topic starter
 

Boa noite,

Como eu falei é um EXEMPLO, mas através dele você pode adaptar de acordo sua necessidade, basta associar a rotina ao TEXTBOX que desejar e ao evento que voce preferir.

Abraço

Consegui meu amigo, tá perfeito, funcionando do jeito que eu queria. Muuuuito obrigado mesmo.

Só um outro problema com esse textbox: Se for digitado uma data invalida, tipo 01/17/2015 ou 32//12/2015 aparece um erro.

Qual saída para validar a data com dias de 01 a 31 e meses de 01 a 12???

 
Postado : 08/04/2015 5:17 pm
(@cvb2004)
Posts: 24
Eminent Member
Topic starter
 

Muito obrigado pessoal, voces sao demais! Consegui deixar essa parte 100%
deu trabalho mas consegui,rs

 
Postado : 08/04/2015 6:15 pm