HERBERS Excel-Forum - das Archiv
Save wird nicht ausgeführt
Andreas

Hallo an alle,
ich habe in meine Anwendung einen 'Schließen-Button' integriert. Hierüber wird die Funktion Workbook_Close() aufgerufen. Soweit funktioniert auch alles. Wenn ich nun mein Makro ausführe, kommt die Meldung "Möchten sie die geänderte Datei speichern" - nach bestätigung mit "Ja" wird auch die entsprechende case-Anweisung Sub Ja() ausgeführt. Problem jedoch: die Save-Anweisung wird einfach übergangen mit der Folge, dass die Anwendung nicht gespeichert wird.
Was ist falsch?
Danke im voraus,
Grüße,
Andreas
-------------------------------------------------------------

Private Sub Workbook_Close()
Workbooks(Wrkbk).Close
End Sub

-------------------------------------------------------------

Private Sub workbook_Beforeclose(Cancel As Boolean)
Dim Antwort%
Dim Frage As String
n = ActiveWorkbook.Name
Msg = "Möchten Sie die geänderte Datei 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    'Abbrechen
End Select
End Sub

-------------------------------------------------------------

Private Sub Ja()
Workbooks(Wrkbk).Activate
Workbooks(Wrkbk).Save
End Sub

...
AW: Save wird nicht ausgeführt
Andi

Hi, das betreffende Workbook is doch sowieso schon aktiv, oder?
Dann probier einfach mal
Activeworkbook.save
Schönen Gruß,
Andi
AW: Save wird nicht ausgeführt
Andreas

Hallo Andi,
hab' ich schon probiert. Das funktioniert leider auch nicht.
Gruß,
Andreas
AW: Save wird nicht ausgeführt
Frank

Hallo Andreas,
versuche es mal so:

Private Sub workbook_Beforeclose(Cancel As Boolean)
Dim Msg As String
If ThisWorkbook.Saved = False Then
Msg = "Möchten Sie die geänderte Datei """ & ThisWorkbook.Name & """ speichern?"
Select Case MsgBox(Msg, vbInformation + vbYesNoCancel)
Case vbYes: ThisWorkbook.Save     'Makroaufruf bei Ja
Case vbNo: 'Call Nein            'Makroaufruf bei Nein
Case vbCancel: Cancel = True    'Abbrechen
End Select
End If
End Sub

Viel Erfolg
Frank.
AW: Save wird nicht ausgeführt
Andreas

Hallo Frank,
hab gerade mal den Code getestet. Funzt leider auch nicht.
Grüße,
Andreas
AW: Save wird nicht ausgeführt
Andi

Hi Namensvetter,
ich muss jetzt leider gleich weg und kann den thread nicht mehr weiter mitverfolgen, aber füge doch mal direkt nach der save-Anweisung die Zeile
MsgBox ActiveWorkbook.Saved
ein.
Dann weisst Du schonmal, ob Excel die Datei für gespeichert hält oder nicht. Das könnte die Fehlersuche erleichtern.
Viel Erfolg noch,
Andi
AW: Save wird nicht ausgeführt
Paula

hi andreas,
hab es selber probiert, es klappt mit dem Makro:

Private Sub workbook_Beforeclose(Cancel As Boolean)
Dim Msg As String
If ThisWorkbook.Saved = False Then
Msg = "Möchten Sie die geänderte Datei """ & ThisWorkbook.Name & """ speichern?"
Select Case MsgBox(Msg, vbInformation + vbYesNoCancel)
Case vbYes: ThisWorkbook.Save     'Makroaufruf bei Ja
Case vbNo: ThisWorkbook.Close     'Makroaufruf bei Nein
Case vbCancel: Cancel = True    'Abbrechen
End Select
End If
End Sub

Allerdings muss das Makro "

Private Sub workbook_Close" entfernt werden
Funzt es jetzt ?
Paula

AW: Save wird nicht ausgeführt
Andreas

Hallo nochmals an alle,
sorry, ich war hatte ein langes Wochenende und kann mich deswegen erst jetzt melden.
Ich habe eure Änderungen mit eingearbeitet, leider aber ohne Erfolg.
Paula:
Da ich Menü- und bearbeitungsleisten ausgeblendet habe, fehlt natürlich auch das 'Schließen-Symbol (x)' in der Bearbeitungsleiste. Deswegen möchte ich einen 'Schließen-Button' integrieren, der genau diese Funktion übernimmt. Wenn ich jetzt also das Mokro 'Workbook_Close' weglasse hab' ich ein neues Problem.
Vielleicht hat ja jemand von euch noch eine andere Idee, denn so langsam macht sich Verzweiflungs bei mir breit.
Vielen dank im voraus,
Grüße Andreas
Save wird nicht ausgeführt
Andreas

Hallo an alle,
ich habe in meine Anwendung einen 'Schließen-Button' integriert. Hierüber wird die Funktion Workbook_Close() aufgerufen. Soweit funktioniert auch alles. Wenn ich nun mein Makro ausführe, kommt die Meldung "Möchten sie die geänderte Datei speichern" - nach bestätigung mit "Ja" wird auch die entsprechende case-Anweisung Sub Ja() ausgeführt. Problem jedoch: die Save-Anweisung wird einfach übergangen mit der Folge, dass die Anwendung nicht gespeichert wird.
Was ist falsch?
Danke im voraus,
Grüße,
Andreas
-------------------------------------------------------------

Private Sub Workbook_Close()
Workbooks(Wrkbk).Close
End Sub

-------------------------------------------------------------

Private Sub workbook_Beforeclose(Cancel As Boolean)
Dim Antwort%
Dim Frage As String
n = ActiveWorkbook.Name
Msg = "Möchten Sie die geänderte Datei 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    'Abbrechen
End Select
End Sub

-------------------------------------------------------------

Private Sub Ja()
Workbooks(Wrkbk).Activate
Workbooks(Wrkbk).Save
End Sub

...
AW: Save wird nicht ausgeführt
Andi

Hi, das betreffende Workbook is doch sowieso schon aktiv, oder?
Dann probier einfach mal
Activeworkbook.save
Schönen Gruß,
Andi
AW: Save wird nicht ausgeführt
Andreas

Hallo Andi,
hab' ich schon probiert. Das funktioniert leider auch nicht.
Gruß,
Andreas
AW: Save wird nicht ausgeführt
Frank

Hallo Andreas,
versuche es mal so:

Private Sub workbook_Beforeclose(Cancel As Boolean)
Dim Msg As String
If ThisWorkbook.Saved = False Then
Msg = "Möchten Sie die geänderte Datei """ & ThisWorkbook.Name & """ speichern?"
Select Case MsgBox(Msg, vbInformation + vbYesNoCancel)
Case vbYes: ThisWorkbook.Save     'Makroaufruf bei Ja
Case vbNo: 'Call Nein            'Makroaufruf bei Nein
Case vbCancel: Cancel = True    'Abbrechen
End Select
End If
End Sub

Viel Erfolg
Frank.
AW: Save wird nicht ausgeführt
Andreas

Hallo Frank,
hab gerade mal den Code getestet. Funzt leider auch nicht.
Grüße,
Andreas
AW: Save wird nicht ausgeführt
Andi

Hi Namensvetter,
ich muss jetzt leider gleich weg und kann den thread nicht mehr weiter mitverfolgen, aber füge doch mal direkt nach der save-Anweisung die Zeile
MsgBox ActiveWorkbook.Saved
ein.
Dann weisst Du schonmal, ob Excel die Datei für gespeichert hält oder nicht. Das könnte die Fehlersuche erleichtern.
Viel Erfolg noch,
Andi
AW: Save wird nicht ausgeführt
Paula

hi andreas,
hab es selber probiert, es klappt mit dem Makro:

Private Sub workbook_Beforeclose(Cancel As Boolean)
Dim Msg As String
If ThisWorkbook.Saved = False Then
Msg = "Möchten Sie die geänderte Datei """ & ThisWorkbook.Name & """ speichern?"
Select Case MsgBox(Msg, vbInformation + vbYesNoCancel)
Case vbYes: ThisWorkbook.Save     'Makroaufruf bei Ja
Case vbNo: ThisWorkbook.Close     'Makroaufruf bei Nein
Case vbCancel: Cancel = True    'Abbrechen
End Select
End If
End Sub

Allerdings muss das Makro "

Private Sub workbook_Close" entfernt werden
Funzt es jetzt ?
Paula

AW: Save wird nicht ausgeführt
Andreas

Hallo nochmals an alle,
sorry, ich war hatte ein langes Wochenende und kann mich deswegen erst jetzt melden.
Ich habe eure Änderungen mit eingearbeitet, leider aber ohne Erfolg.
Paula:
Da ich Menü- und bearbeitungsleisten ausgeblendet habe, fehlt natürlich auch das 'Schließen-Symbol (x)' in der Bearbeitungsleiste. Deswegen möchte ich einen 'Schließen-Button' integrieren, der genau diese Funktion übernimmt. Wenn ich jetzt also das Mokro 'Workbook_Close' weglasse hab' ich ein neues Problem.
Vielleicht hat ja jemand von euch noch eine andere Idee, denn so langsam macht sich Verzweiflungs bei mir breit.
Vielen dank im voraus,
Grüße Andreas
Bewerten Sie hier bitte das Excel-Portal