HORA NO EXCEL
Montei uma planilha p/ controle de horas, e coloquei uma macro p/ me informar a data e hora atual, esta funcionando tudo ok [Ô] ou quase[Ô], o problema é o seguinte quando eu tenho outras planilhas aberta a celula A1 que é onde esta formatada a data e hora é alterada en todas as planilhas, não estou conseguindo alterar a programação p/ que a hora seja atualizada apenas na planilha de Controle de Horas.
obs. Não entendo praticamente nada de programação, estou lendo apostilas baixada aqui no VBmania.
Segue o código que eu copiei da internet e acrescentei uma rotina p/ quando abrir a planilha ficar atualizando automaticamente.
Option Explicit
Const DateAndTimeCell As String = [Ô]A1[Ô]
Dim OK As Boolean
Sub StartUpdate()
Range(DateAndTimeCell).NumberFormat = [Ô]dd.mm.yyyy hh:mm:ss[Ô]
OK = True
Update
End Sub
Sub Update()
Dim StatBarMsgString As String
If Application.International(xlCountrySetting) = 47 Then
StatBarMsgString = [Ô]Gjeldende dato og tid: [Ô]
Else
StatBarMsgString = [Ô]Current date and time: [Ô]
End If
If OK Then
Range(DateAndTimeCell).Formula = Now
Application.StatusBar = StatBarMsgString & Format(Now, [Ô]d.m.yyyy hh:mm:ss[Ô])
Application.OnTime Now + TimeValue([Ô]00:00:01[Ô]), [Ô]Update[Ô], , True
Else
Range(DateAndTimeCell).Formula = [Ô][Ô]
Application.StatusBar = False
End If
End Sub
obs. Não entendo praticamente nada de programação, estou lendo apostilas baixada aqui no VBmania.
Segue o código que eu copiei da internet e acrescentei uma rotina p/ quando abrir a planilha ficar atualizando automaticamente.
Option Explicit
Const DateAndTimeCell As String = [Ô]A1[Ô]
Dim OK As Boolean
Sub StartUpdate()
Range(DateAndTimeCell).NumberFormat = [Ô]dd.mm.yyyy hh:mm:ss[Ô]
OK = True
Update
End Sub
Sub Update()
Dim StatBarMsgString As String
If Application.International(xlCountrySetting) = 47 Then
StatBarMsgString = [Ô]Gjeldende dato og tid: [Ô]
Else
StatBarMsgString = [Ô]Current date and time: [Ô]
End If
If OK Then
Range(DateAndTimeCell).Formula = Now
Application.StatusBar = StatBarMsgString & Format(Now, [Ô]d.m.yyyy hh:mm:ss[Ô])
Application.OnTime Now + TimeValue([Ô]00:00:01[Ô]), [Ô]Update[Ô], , True
Else
Range(DateAndTimeCell).Formula = [Ô][Ô]
Application.StatusBar = False
End If
End Sub
Boa tarde MACRACANTHUS,
Para verificar o nome da planinha que vc esta utilizando, use o Worksheet:
Caso vc queira percorrer todas as abas de sua planilha, faça:
Para verificar o nome da planinha que vc esta utilizando, use o Worksheet:
Private Sub sTestePlan()
Dim objControle As New Worksheet
If objControle.Name = [Ô]NomePlanilha[Ô] Then
[ô]Insira seu código aki
End If
End Sub
Caso vc queira percorrer todas as abas de sua planilha, faça:
For Each objControle In Worksheets
If Mid(objControle.Name, 1, 5) = [Ô]Plan1[Ô] Then
[ô]Insira seu código aki
Exit For
End If
Next
Boa Noite Rodrigo,
Não estou conseguindo, não entendo praticamente nada de programação, poderia me passar como ficaria o codigo completo, tentei de várias maneiras mas nenhuma funcionou.
Grato pela atenção.
Não estou conseguindo, não entendo praticamente nada de programação, poderia me passar como ficaria o codigo completo, tentei de várias maneiras mas nenhuma funcionou.
Grato pela atenção.
Tópico encerrado , respostas não são mais permitidas