Download
Relação .doc:   15.000  Macros, Funções e  Fórmu
las

Dicas  Excel Macros VBA  



Pergunta 46:
como posso fazer um relógio que mostra as horas em um formulário? e isso aconteceria como um SPlash para um programa que tenho. (horas contínuas)
Resposta 46:
'insira :     1UserForm1 - 1Label1
'Estas macros mostram horas através de um userform, horas continuas
'Relógio digital
Private Sub UserForm_Activate()

onOff = True   '  variável declarada como global as boolean
'inicia o ciclo de a cada segundo actualizar as horas no formulário
Application.OnTime Now + TimeValue("00:00:01"), "MostrarHoras"
End Sub
'
'termina o ciclo de atualização por
'encerramento do formulário

Private Sub UserForm_Terminate()
onOff = False
End Sub
'
Global onOff As Boolean
Sub MostrarFormulário()
UserForm1.Show
End Sub
'
Sub MostrarHoras()
On Error Resume Next
'colocação da data e horas devidamente formatadas
UserForm1.Label1.Caption = Format(Now, "dddd dd-mm-yyyy hh:mm:ss")
'só é executado se o formulário estiver activo
If onOff = True Then
Application.OnTime Now + TimeValue("00:00:01"), "MostrarHoras"
Else
Application.OnTime 0, ""
End If
End Sub

'Esta macro abre um form splash e o fecha em 5 segundos.
Private Sub UserForm_Activate()
Application.OnTime Now + TimeValue("00:00:05"), "FechaSplash"
End Sub
'
Sub Auto_Open()
On Error Resume Next
Splash.Show
End Sub
'
Sub FechaSplash()
On Error Resume Next
Splash.Hide
End Sub