Utilizo um script que através de um campo date (dd/mm/aaaa), ele joga o resultado em anos em um outro campo "Ao receber o foco". O problema é que quando tiro relatórios, as pessoas que não acessei o formulário, fica com a idade desatualizada. Como posso fazer com que o script atualize automaticamente a idade das pessoas mesmo que eu não entre em seu registro?
Se eu não passar o mouse por cima do campo, ele não atualiza.
Segue os códigos:
Ao receber foco
Private Sub idade_GotFocus()
idade = CalculaIdade([data_nasc])
End Sub
Ele chama essa função:
Public Function CalculaIdade(datNasc As Date) As Integer
Dim i As Integer, intBix As Integer, intAno As Integer, datHoje As Date
datHoje = Date
intBix = 0
i = Year(datNasc)
i = IIf((i Mod 4 = 0 And ((Not i Mod 100 = 0) Or i Mod 400 = 0)) And datNasc <= DateSerial(i, 2, 28), i, i + 1)
intAno = Year(datHoje)
intAno = IIf((intAno Mod 4 = 0 And ((Not intAno Mod 100 = 0) Or intAno Mod 400 = 0)) And datHoje > DateSerial(intAno, 2, 28), intAno, intAno - 1)
For i = i To intAno
If i Mod 4 = 0 And ((Not i Mod 100 = 0) Or i Mod 400 = 0) Then
intBix = intBix + 1
Exit For
End If
Next
For i = i + 4 To intAno Step 4
If (Not i Mod 100 = 0) Or i Mod 400 = 0 Then
intBix = intBix + 1
End If
Next
CalculaIdade = (DateDiff("d", datNasc, datHoje) - intBix) \ 365
End Function
Como posso automatizar este cálculo sem precisar entrar no registro do usuário?
Pergunta
D@rk
Boa noite,
Utilizo um script que através de um campo date (dd/mm/aaaa), ele joga o resultado em anos em um outro campo "Ao receber o foco". O problema é que quando tiro relatórios, as pessoas que não acessei o formulário, fica com a idade desatualizada. Como posso fazer com que o script atualize automaticamente a idade das pessoas mesmo que eu não entre em seu registro?
Se eu não passar o mouse por cima do campo, ele não atualiza.
Segue os códigos:
Ao receber foco
Ele chama essa função:
Como posso automatizar este cálculo sem precisar entrar no registro do usuário?
Abs.
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.