Ich habe ein Workbook mit 4 Tabellen, die nur über Userforms bearbeitet werden können.
Ich möchte, dass dieses Workbook gespeichert und geschlossen wird, wenn 5 min nicht mehr damit gearbeitet wurde.
Ist das möglich?
Gruß Ralph
Gruß Ralph
ralph.poh@gmx.net
Ich hab jetzt mal hier 5 Sekunden vorgegeben und die Datei wird
auch nicht gespeichert und geschlossen. Eine MsgBox zeigt das
nur an.
Die Wirkung: Beim Öffnen wird der Stopp- Befehl auf True gesetzt
und ein zeitabhängies Makro aufgerufen. Wird innerhalb der festgelegten Zeit kein userform aufgerufen, wird die Datei
gespeichert und geschlossen. Wenn userform gestartet wird, wird der Stoppbefehl auf False gesetzt. Beim Schließen passiert das Gleiche wie beim Öffnen.
in Diese Arbeitsmappe:
Option Explicit
Private Sub Workbook_Open()
Call Stopp_setzen
Call beenden
End Sub
In ein stinknormales Modul:
Option Explicit
Sub beenden()
''Hier die Zeit bis zum Schließen festlegen z.B.
''TimeSerial(0, 5, 0) für 5 Minuten
Application.OnTime Now + TimeSerial(0, 0, 5), "Datei_schließen"
End Sub
Sub Datei_schließen()
If ThisWorkbook.CustomDocumentProperties("Stopp").Value = True Then
MsgBox "Datei gespeichert und geschlossen!"
End If
End Sub
Sub Stopp_setzen()
ThisWorkbook.CustomDocumentProperties("Stopp").Value = True
End Sub
Sub Stopp_aufheben()
ThisWorkbook.CustomDocumentProperties("Stopp").Value = False
End Sub
In die userform:
Option Explicit
Private Sub UserForm_Activate()
Call Stopp_aufheben
End Sub
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
Call Stopp_setzen
Call beenden
End Sub