wie bringe ich anstatt diesem PopUp eine UserForm zur Anzeige? Und zwar soll diese 2 Sekunden angezeigt werden und dann soll der Ablauf von diesem Code weitergehen (also Datei bleibt noch 20 Sekunden geöffnet und dann schließt sich diese erst).
Denn mit dieser PopUp Variante, wartet der Code erst ab, bis auf OK geklickt wurde und dann schließt sich die Datei erst nach 20 Sekunden. Und genau das möchte ich nicht, weil dann der User andere Anwender blockiert.
Option Explicit
Public dteCloseTime As Date, blnCloseNow As Boolean
Public Sub DoClose()
Dim strMsg As String
If blnCloseNow = False Then
strMsg = "Diese Datei wurde seit 3 Minuten nicht bearbeitet und" & vbCrLf & _
"wird bei weiterer Inaktivität in 20 Sekunden geschlossen."
CreateObject("WScript.Shell").PopUp strMsg, 10, ThisWorkbook.Name, _
vbOKOnly + vbInformation + vbSystemModal
blnCloseNow = True
dteCloseTime = Now + TimeSerial(0, 0, 20)
Application.OnTime dteCloseTime, "DoClose"
Else
If Workbooks.Count = 1 Then
Application.DisplayAlerts = False
Application.Quit
Else
ThisWorkbook.Close False
End If
End If
End Sub