AW: Excel-Fenster im Hintergrund
14.03.2019 07:02:23
Marcus
Vielen Dank Daniel,
genau so habe ich es gelöst.
Das gute daran ist, alle anderen Excel-Fenster können geschlossen werden, auch mit Rechtsklick auf die Taskleiste.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'Das OnTime-Ereignis beenden
'# Auskommentiert, da sonst bei einem Versuch die Excel zu schließen,
'# der Timer beendet wird, die Excel aber offen bleibt
' Call Ende
'die Nachfrage zum speichern verhindern, trotzdem speichern
ThisWorkbook.Save
ThisWorkbook.Saved = True
'Abfrage, ob die Excel wirklich geschlossen werden soll
Cancel = Not blnBeendenErlaubt
End Sub
Und das noch in einer Form:
Private Sub btnOK_Click()
If tbPasswort.value = "bernd" Then
blnBeendenErlaubt = True
If Application.Workbooks.Count = 1 Then
Application.Quit
Unload Me
Else
ThisWorkbook.Close
End If
Else
blnBeendenErlaubt = False
Unload Me
End If
End Sub
Jetzt ist mir nur noch eins aufgefallen.
Ich hole mit meiner Excel Daten aus einer .csv auf einem anderen Rechner. Ist dieser Rechner nicht erreichbar, verlängere ich nur den Intervall, wann geschaut wird.
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Select Case False
Case fso.FileExists(strPath)
Debug.Print Time & " - Meldung von Import - Derzeit keine Hofliste verfü _
gbar. PC ausgeschaltet?"
'neue Zeit festlegen, solange die Hofliste nicht verfügbar ist
dtNextTime = Now + TimeSerial(0, 5, 0)
Application.OnTime dtNextTime, "ZeitstempelAktualisieren", , True
Application.StatusBar = "Derzeit keine Hofliste verfügbar. _
Aktualisierung wieder um " & Time + TimeSerial(0, 5, 0)
Exit Sub
End Select
So, und genau dann, wenn der Pfad nicht erreichbar ist, dann wird "Workbook_BeforeClose" nicht ausgeführt. Gibt es dafür eine Regel?