- 03 Fev 2022 às 12:20
#69007
Pessoal, seguinte:
No meu formulário, Textbox: TBVctoPrim. É data (dd/mm/aaaa). Já está formatada para colocar só números, coloca as "/", uso Cdate para colocar no excel, tudo certo. Meu problema é verificar erros, se o usuário não colocou uma data nada a ver, o que acontece bastante sabe deus como eles conseguem.
Hoje, num "AfterUpdate" jogo ela no excel e faço uma série de cálculos. Ele verifica se a data é válida e se o ano está entre 2011 e 2050. Depois apaga o value e avisa que a data é inválida, ou passa para a próxima textbox se estiver correta. Mas é bem chato e trabalhoso.
Tem como fazer essa verificação direto no VBA, no AfterUpdate da textbox?
Seria assim:
21/13/2022: Msgbox "Data inválida" (e apaga o valor da textbox)
33/01/2022: idem
21/02/202: idem
21/02/2010: idem (por causa do ano < 2011)
21/02/2051: idem (por causa do ano > 2050)
***30/02/2022: Nesse caso específico, já corrige para 28/02/2022
E se estiver certo, end sub e passa para a outra textbox.
Faço tudo isso na planilha, mas é muito trabalho, e tenho várias textbox com datas.
Se alguém pudesse me passar esse código, ajudaria muito mesmo.
Desde já, Obrigado.
No meu formulário, Textbox: TBVctoPrim. É data (dd/mm/aaaa). Já está formatada para colocar só números, coloca as "/", uso Cdate para colocar no excel, tudo certo. Meu problema é verificar erros, se o usuário não colocou uma data nada a ver, o que acontece bastante sabe deus como eles conseguem.
Hoje, num "AfterUpdate" jogo ela no excel e faço uma série de cálculos. Ele verifica se a data é válida e se o ano está entre 2011 e 2050. Depois apaga o value e avisa que a data é inválida, ou passa para a próxima textbox se estiver correta. Mas é bem chato e trabalhoso.
Tem como fazer essa verificação direto no VBA, no AfterUpdate da textbox?
Seria assim:
21/13/2022: Msgbox "Data inválida" (e apaga o valor da textbox)
33/01/2022: idem
21/02/202: idem
21/02/2010: idem (por causa do ano < 2011)
21/02/2051: idem (por causa do ano > 2050)
***30/02/2022: Nesse caso específico, já corrige para 28/02/2022
E se estiver certo, end sub e passa para a outra textbox.
Faço tudo isso na planilha, mas é muito trabalho, e tenho várias textbox com datas.
Se alguém pudesse me passar esse código, ajudaria muito mesmo.
Desde já, Obrigado.