Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
980to984
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
980to984
980to984
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Excel manuel beenden und vorher bestimmtes Blatt e

Excel manuel beenden und vorher bestimmtes Blatt e
03.06.2008 09:33:00
Bernd
Hallo,
ich möchte das beim schliessen der Arbeitsmappe nur ein bestimmtes Tabellenblatt gespeichert wird und nicht die ganze Arbeitsmappe.
Bei Workbook_BeforeClose wird eine Procedure aufgerufen die dieses abfragt.
Sieht wie folgt aus:

Sub Beenden
' Angebot vor dem Beenden speichern?
Antwort = MsgBox("Angebot vorher speichern?", vbYesNoCancel)
' Ja - Angebot speichern und Excel schliessen
If Antwort = vbYes Then
' Angebot abspeichern
SpeicherUnfertigesAngebot
Application.DisplayAlerts = False
ThisWorkbook.Saved = True
Application.Quit
End If
' Nein - Angebot nicht speichern und Excel schliessen
If Antwort = vbNo Then
Application.DisplayAlerts = False
ThisWorkbook.Saved = True
Application.Quit
End If
' Abbruch - Nichts machen
If Antwort = vbChancel Then
End If
End Sub


Das Problem ist wenn der Benutzer "Abbruch" (vbChancel) anklickt. Hier sollte nichts passieren (im Moment fragt Excel danach ab, ob die gesamte Arbeitsmappe zu speichern ist) . Wie muss die Abfrage aussehen damit bei "Abbruch" nichts passiert?
Gruss
Bernd

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel manuel beenden und vorher bestimmtes Blatt e
03.06.2008 09:57:00
fcs
Hallo Bernd,
passe die Workbook_BeforeClose-Prozedur und die Prozedur wie folgt an:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call Beenden
Cancel = True
End Sub
Sub Beenden()
' Angebot vor dem Beenden speichern?
Antwort = MsgBox("Angebot vorher speichern?", vbYesNoCancel)
' Ja - Angebot speichern und Excel schliessen
If Antwort = vbYes Then
' Angebot abspeichern
SpeicherUnfertigesAngebot
Application.EnableEvents = False
Application.DisplayAlerts = False
ThisWorkbook.Saved = True
Application.Quit
End If
' Nein - Angebot nicht speichern und Excel schliessen
If Antwort = vbNo Then
Application.EnableEvents = False
Application.DisplayAlerts = False
ThisWorkbook.Saved = True
Application.Quit
End If
' Abbruch - Nichts machen
If Antwort = vbChancel Then
End If
End Sub


Anzeige
AW: Excel manuel beenden und vorher bestimmtes Bla
03.06.2008 10:13:00
Renee
Hi Bernd,
...ich möchte das beim schliessen der Arbeitsmappe nur ein bestimmtes Tabellenblatt gespeichert wird und nicht die ganze Arbeitsmappe. Das kann nicht funktionieren. Entweder wird die ganze Datei (mit allen Blättern) gespeichert, oder alle Änderungen gehen verloren! Nur ein bestimmtes Blatt aus einer Mappe speichern geht nicht.
Ich frage mich, wieso für deine Abfrage eine zusätzliche Routine nötig sein soll.
Das funktioniert doch am einfachsten so:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Select Case MsgBox("Angebot vorher speichern?", vbYesNoCancel)
Case vbYes
Me.Save
Case vbNo
Me.Saved = True
Case Else
Cancel = True
End Select
End Sub


GreetZ Renée

Anzeige
AW: Excel manuel beenden und vorher bestimmtes Blatt e
03.06.2008 10:35:10
Bernd
Hallo,
danke für die schnellen Antworten. Funktioniert super!!
Gruss
Bernd

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige