ich hab da mal ne Frage? Kann man mit VBA eine Uhr erstellen die nicht als UF erscheint sondern in der Symbolleiste läuft? Ist sowas machbar?
Gruß Roger
Sub UhrInStatusLeiste()
Application.StatusBar = Format(Now, "DD.MM.YYYY hh:mm:ss")
Application.OnTime Now + TimeValue("00:00:01"), "UhrInStatusLeiste"
End Sub
'Uhrzeitmakro stoppen und Statusleiste zurücksetzen
Sub Ende()
On Error Resume Next
Application.OnTime Now + TimeValue("00:00:01"), Procedure:="UhrInStatusLeiste", Schedule:= _
False
Application.StatusBar = False
End Sub
Gruß Worti
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.CommandBars("Worksheet Menu Bar").Reset
End Sub
Private Sub Workbook_Open()
Dim cmdBar As CommandBar
Dim cmdMenu As CommandBarControl
Dim cmdButton As CommandBarButton
Set cmdBar = Application.CommandBars("Worksheet Menu Bar")
Set cmdMenu = cmdBar.Controls.Add(msoControlPopup, Before:=cmdBar.Controls.Count)
cmdMenu.Caption = "MeineUhr"
Set cmdButton = cmdMenu.Controls.Add
With cmdButton
.Caption = "Uhr starten"
.OnAction = "UhrEin"
End With
Set cmdButton = cmdMenu.Controls.Add
With cmdButton
.Caption = "Uhr stoppen"
.OnAction = "UhrAus"
End With
End Sub
Und dann in einem allgemeinen Modul der personl.xls wie gehabt die zwei Uhrzeit-Module:(ich hab sie ein wenig umbenannt)
Option Explicit
Sub UhrEin()
Application.StatusBar = Format(Now, "DD.MM.YYYY hh:mm:ss")
Application.OnTime Now + TimeValue("00:00:01"), "UhrEin"
End Sub
Sub UhrAus()
On Error Resume Next
Application.OnTime Now + TimeValue("00:00:01"), Procedure:="UhrEin", _
Schedule:=False
Application.StatusBar = False
End Sub
Dann erscheint bei dir in der Menüleiste das Menü "MeineUhr"
Gruß Worti