Anzeige
Archiv - Navigation
1948to1952
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Application.Ontime Anweisung bei mehreren offenen Workbooks

Application.Ontime Anweisung bei mehreren offenen Workbooks
27.10.2023 15:27:17
Martin Gütlbauer
Hallo!

Habe ein kleines Problem mit der Application.Ontime Anweisung und weiß nicht genau wo der Fehler liegt...

Ich habe in meinen workbooks folgenden Code in einem Standardmodul, wobei bei einem Workbook_SheetChange Ereignis zuerst ein stop_Countdown und dann start_Countdown aufgerufen wird.

Option Explicit

Public Close_Time As Date

Sub start_Countdown()
Close_Time = Now() + TimeValue(Format(ThisWorkbook.Names("Timer").RefersToRange.Value, "hh:nn:ss"))
Application.OnTime Close_Time, "close_WB"
End Sub

Sub stop_Countdown()
On Error Resume Next
Application.OnTime Close_Time, "close_WB", , False
On Error GoTo 0
End Sub

Sub close_WB()
ThisWorkbook.Close True
End Sub


Funktioniert auch gut wenn nur ein Workbook mit diesem Code offen ist. Ich habe aber mehrere baugleiche Workbooks (mit exakt demselben Code) gleichzeitig offen. Arbeite manchmal aber nur in einem dieser offenen Workbooks. Meine Erwartung wäre dass obiger Code diejenigen Workbooks schließt, bei denen kein Workbook_SheetChange Ereignis den Timer resettet.

Es ist aber so dass alle Workbooks offen bleiben bis ich in keinem mehr arbeite und dann schließen sich alle Workbooks gleichzeitig. Es scheint also dass irgendwas vielleicht nicht gut referenziert ist, aber was?

Alles Liebe
Martin Gütlbauer

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Application.Ontime Anweisung bei mehreren offenen Workbooks
27.10.2023 15:51:32
daniel
Hi

Vermutlich muss der Makroaufruf mit Dateinamen erfolgen, so in der Art

Application.Ontime CloseTime, "'" & Thisworkbook.name & "'!Close_WB"


Gruß Daniel
AW: Application.Ontime Anweisung bei mehreren offenen Workbooks
27.10.2023 17:28:03
onur
Du musst, BEVOR du eine Datei schliesst, den entsprechenden Timer ebenso beenden.
Application.OnTime Close_Time, "close_WB", , False

muss also auch noch in den Before_Close-Events ALLER Dateien stehen.
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige