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

Before-Close-Anweisung

Before-Close-Anweisung
10.03.2005 14:43:24
Andreas
Hallo an alle Excel-Profis,
ich kämpfe jetzt schon seit Tagen an einem Problem und komme einfach nicht weiter. Ich habe eine Anwendung (siehe angehängte Beispieldatei), in der eine Befóre_Close-Anweisung durchgeführt wird.
Solange nur diese eine datei geöffnet ist, gibt es auch keinerlei Probleme. Sobald jetzt allerdings eine weitere Datei geöffnet (und gleichzeitig aktiv) ist funktioniert das ganze schon nicht mehr. Das makro läuft eigentlich korrekt bis zur Save-Anweisung - aber das Workbook wird am Ende nicht geschlossen.
Vielen dank im voraus,
Grüße
Andreas

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ...Link zur Datei...
10.03.2005 15:45:42
Beate
Hallo Andreas,
wie sieht es aus, wenn du deinen Code komplett hierdurch ersetzt?:
Const pwd_wrkbk = ("123")
Const wrkbk = ("test.xls")

Sub workbook_Beforeclose(Cancel As Boolean)
'Standard-Abfrage beim Speichern wird unterdrückt und durch ein separates Dialogfenster abgefragt
Dim Antwort%
Dim Frage As String
Msg = "Möchten Sie die geänderte Datei " & Workbooks(wrkbk).Name & " speichern?"
Select Case MsgBox(Msg, vbInformation + vbYesNoCancel)
Case vbYes:     Call Ja         'Makroaufruf bei Ja
Case vbNo:      Call Nein        'Makroaufruf bei Nein
Case vbCancel:  Cancel = True   'Makroaufruf bei Abbrechen
End Select
End Sub


Sub Ja()
'Dieser Code wird ausgeführt, wenn in der Before_Close_Anweisung 'Ja' gedrückt wird
Workbooks(wrkbk).Activate
If (Workbooks(wrkbk).ActiveSheet.Name = "Einleitung") Then
Workbooks(wrkbk).Unprotect (pwd_wrkbk)
Workbooks(wrkbk).ActiveSheet.Visible = False
Workbooks(wrkbk).Protect Password:=pwd_wrkbk, Structure:=True, Windows:=False
End If
Workbooks(wrkbk).Sheets("Hauptmenu").Select
Workbooks(wrkbk).Sheets("Hauptmenu").Range("C3") = ""
Application.DisplayFormulaBar = True
Application.DisplayStatusBar = True
Application.CommandBars("Worksheet Menu Bar").Enabled = True
ActiveWindow.DisplayWorkbookTabs = True
Application.CommandBars("Drawing").Visible = True
Me.Save
End Sub


Sub Nein()
'Dieser Code wird ausgeführt, wenn in der Before_Close_Anweisung 'Nein' gedrückt wird
Workbooks(wrkbk).Activate
Workbooks(wrkbk).Sheets("Hauptmenu").Select
Workbooks(wrkbk).Sheets("Hauptmenu").Range("C3") = ""
Application.DisplayFormulaBar = True
Application.DisplayStatusBar = True
Me.Saved = True
Cancel = False
End Sub

Gruß,
Beate
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige