Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1932to1936
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

Msg Box beim Schließen von Excel

Msg Box beim Schließen von Excel
31.05.2023 11:13:06
GH

Hallo Gemeinde,

ich habe da mal zwei kurze Fragen.
Meine Arbeitsmappe besteht aus zwei Arbeitsblättern. Beim Schließen der Arbeitsmappe erfolgt per Msg Box eine Ja/Nein Abfrage mit Hinweis auf Blatt 2. Bei "Ja" schließt sich die Arbeitsmappe, bei "Nein" bleibt sie geöffnet. Das funktioniert auch soweit einwandfrei.
Meine Idee war jetzt, dass bei "Nein" die Arbeitsmappe geöffnet bleibt, aber dann direkt zu Blatt 2 springt. Gibt es diese Möglichkeit?
Zweite Frage ist, könnte man das ganze Prozedere so einstellen, dass die Msg Box nur erscheint, wenn ich die Arbeitsmappe aus Blatt 1 schließe, weil, wenn ich mich schon auf Blatt 2 befinde, dann wäre die Msg Box mit dem Hinweis auf das zweite Blatt eigentlich überflüssig.

Hier der bereits eingefügte Code:

Public Sub Workbook_BeforeClose(Cancel As Boolean)
'Abfrage Restarbeiten
JN = MsgBox("Bitte Blatt Restarbeiten überprüfen", vbYesNo)
If JN > 6 Then
Cancel = True
End If
End Sub

Ich bedanke mich schonmal für Eure Hilfe

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Msg Box beim Schließen von Excel
31.05.2023 11:48:05
volti
Hallo,

hier eine Idee, jedoch ungetestet...

Code:


Public Sub Workbook_BeforeClose(Cancel As Boolean) 'Abfrage Restarbeiten If ActiveSheet.Name <> "Restarbeiten" Then If MsgBox("Bitte Blatt Restarbeiten überprüfen!", vbYesNo Or vbExclamation) = vbYes Then Sheets("Restarbeiten").Select Cancel = True End If End If End Sub

_________________________
viele Grüße aus Freigericht 😊
Karl-Heinz



Anzeige
AW: Msg Box beim Schließen von Excel
31.05.2023 12:34:51
GH
Besten Dank an Dich, das ist genau das was ich wollte :D


AW: Msg Box beim Schließen von Excel
31.05.2023 13:24:35
GH
Sorry, ich nochmal
Wie schon gesagt, funktioniert Dein Code super.
Ein Problem habe ich dabei aber noch. Die Arbeitsmappe bzw. Excel selbst lässt sich nur über den "X" Button schliessen. Nehme ich den Weg über "Datei" "Schließen" wird zwar die Arbeitsmappe wie gewünscht geschlossen, aber Excel bleibt noch offen. Im VBA Editor wird angezeigt "Keine Projekte geöffnet". Hier dann auch, Excel beenden nur über das "X" möglicht, unter "Datei" ist alles außer "Neu" und "Öffnen" ausgegraut.


Anzeige
AW: Msg Box beim Schließen von Excel
31.05.2023 13:29:29
volti
Hallo,

probiere mal....

Application.Quit   ' Excel schließen

Gruß KH


AW: Msg Box beim Schließen von Excel
31.05.2023 14:18:27
GH
Jetzt kann ich zwar über "Datei" "Schließen" das Ganze beenden, aber die Msg Box tut nicht mehr das was sie soll. Die Ja/Nein Abfrage kommt, aber egal welchen Button ich jetzt drücke, Excel wird sofort beendet. :D :D :D
Ich häng den kompletten Worksheet Code nochmal an, vielleicht hab ich das Application.Quit ja nur an die falsche Stelle gesetzt.

Private Sub Workbook_Open()
'Öffnen immer mit Seite 1
    ThisWorkbook.Saved = True
    Worksheets(1).Activate
    [D14].Select
     
'Blattschutz für manuelle Eingabe
    Dim ws As Worksheet
    For Each ws In ThisWorkbook.Worksheets
    ws.Protect UserInterfaceOnly:=True
    Next ws
End Sub

Public Sub Workbook_BeforeClose(Cancel As Boolean)
'Abfrage Restarbeiten
    If ActiveSheet.Name > "Restarbeiten" Then
    If MsgBox("Hast Du Blatt Restarbeiten überprüft?", vbYesNo Or vbExclamation) = vbNo Then
       Sheets("Restarbeiten").Select
       Cancel = True
       Application.Quit
    End If
    End If
End Sub


Anzeige
AW: Msg Box beim Schließen von Excel
31.05.2023 14:45:04
volti
Naja, in der Tat ist das dort falsch am Platz, denn wenn Du den Schließprozess abbrechen willst um ins Blatt Restarbeiten zu kommen, darfst Du anschließend nicht die Applikation beenden.
Schau mal, ob es so klappt.

Public Sub Workbook_BeforeClose(Cancel As Boolean)
'Abfrage Restarbeiten
 If ActiveSheet.Name > "Restarbeiten" Then
    If MsgBox("Hast Du Blatt Restarbeiten überprüft?", vbYesNo Or vbQuestion) = vbNo Then
       Sheets("Restarbeiten").Select
       Cancel = True
       exit sub
    End If
 End If
  Application.Quit
End Sub
Gruß KH


Anzeige
AW: Msg Box beim Schließen von Excel
31.05.2023 14:56:31
GH
Natürlich, Du hast Recht. Jetzt funzt das auch. Man bin ich blöd.
Ich lass Dich auch jetzt in Ruhe... fürs Erste jedenfalls. ;)
Also besten Dank nochmal für die Hilfe, wünsche Dir noch einen angenehmen Nachmittag.

Gruß GH

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige