Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Timer in Statusbar einfügen?
#1
Hallo zusammen, 

ich habe für eine excel datei einen timer der die mappe nach ablauf der zeit automatisch schließt. ist es möglich den timer in der statusbar anzeigen zu lassen, damit man die verbleibende zeit bis zum beenden sieht?
danke schonmal für eure hilfe


Arbeitsmappe

Dim altezeit
Private Sub Workbook_Open()
On Error Resume Next
neuezeit = Time + TimeSerial(0, 5, 00)
Application.OnTime EarliestTime:=altezeit, Procedure:="Schließen", Schedule:=False
altezeit = neuezeit
Application.OnTime neuezeit, "Schließen"
   
End Sub




Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next
neuezeit = Time + TimeSerial(0, 5, 00)
Application.OnTime EarliestTime:=altezeit, Procedure:="Schließen", Schedule:=False
altezeit = neuezeit
Application.OnTime neuezeit, "Schließn"



End Sub


 

Modul

Sub Schließn()
ThisWorkbook.Close savechanges:=True
End Sub
Antworten Top
#2
Moin,

was sagt das Web dazu?
https://docs.microsoft.com/de-de/office/....statusbar

gruß
Marco
gruß
Marco
Antworten Top
#3
Hallo

Code in DieseArbeitmappe:
Code:
Option Explicit

Private Sub Workbook_Open()
    Starten
End Sub

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    Starten
End Sub
In Modul1:
Code:
Option Explicit
Option Private Module
Dim Bol As Boolean

Public Sub Starten()
Dim NeuZ As Date
    NeuZ = Time + (1 / 1440)
'Uhr läuft
        Bol = False
    Do
        If Time >= NeuZ Then Bol = True
        If Bol = True Then Stopp
        DoEvents
            Application.StatusBar = "Verbleiben " & Format(NeuZ - Time, "hh:mm:ss")
    Loop While Bol <> True
End Sub

Public Sub Stopp()
'Uhr wird angehalten
    Bol = True
    Application.StatusBar = ""
        DoEvents
            ThisWorkbook.Close savechanges:=True
End Sub
Die Zeit ist hier auf 1 Minute gesetzt NeuZ = Time + (1 / 1440)
Ändere die Zeile auf NeuZ = Time + (5 / 1440)
Um die Zeit anzuhalten drücke ein paar Sekunden die Esc-Taste

Gruss Guschti


Angehängte Dateien
.xlsm   Restzeit_in_Statusbar.xlsm (Größe: 16,19 KB / Downloads: 8)
Der Künstler lebt auch vom Applaus
Excel Optimaler Zuschnitt von Stangen/Balken - YouTube
[-] Folgende(r) 1 Nutzer sagt Danke an Guschti für diesen Beitrag:
  • vayu_
Antworten Top
#4
Hallo Gutschi,
Das funktioniert super :97: :97: (wobei ich gerade versuche zu verstehen, wie das ohne Application.OnTime funktioniert Blush )
Kann es auch sein das man keine zweite Arbeitsmappe anzeigen kann? Die 2te springt bei mir sofort in den Hintergrund solange der Timer aktiv ist.
Kann der Timer auch ausgeblendet werden wenn die Arbeitsmappe geschlossen ist?
Antworten Top
#5
Hallo vayu

Das geht nur, wenn Excel in getrennter Instanz geöffnet ist. (Ab Excel 2013 automaisch)

Für Excel 2010 kannst du das nur über die Registry einstellen. Aber davon Rate ich dir ab.

Gruss Guschti
Der Künstler lebt auch vom Applaus
Excel Optimaler Zuschnitt von Stangen/Balken - YouTube
Antworten Top
#6
Alles klar. Danke
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste