Zellen löschen vor AM schließen

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Zellen löschen vor AM schließen
von: Gerd
Geschrieben am: 24.09.2015 11:48:40

Ich möchte beim Schließen meiner Arbeitsmappe mit 4 Arbeitsblättern automatisch Zellen, die mit Namen versehen sind, in AB 4 löschen, um einen definierten Anfangszustand (Zellen leer) beim erneuten Öffnen zu haben.
Ein Versuch mit Workbook_BeforeClose ist mir nicht gelungen:

  • 
    Private Sub Workbook_Beforeclose(Cancel As Boolean)
    '
    ' Variablen für Spielbericht und Blatt in Zellen löschen
        With Workbooks(sBeamer)
            With .Worksheets(intAB_Beamer)
                .Unprotect
                .Range("Spiel").ClearContents
                .Range("Blatt").ClearContents
                .Protect
            End With
        End With
    '
    End Sub

  • Kann jemand helfen?
    Danke & Gruß
    Ged

    Bild

    Betrifft: AW: Zellen löschen vor AM schließen
    von: Rudi Maintaire
    Geschrieben am: 24.09.2015 12:01:09
    Hallo,
    sollte funktionieren.
    Welchen Wert haben die Variablen und woher kommt der?
    Was klappt nicht?
    Gruß
    Rudi

    Bild

    Betrifft: AW: Zellen löschen vor AM schließen
    von: Gerd
    Geschrieben am: 24.09.2015 12:15:12
    Hallo Rudi,
    alle verwendeten Variablen und auch der zitierte Programmteil stammen aus einem funktionierenden Makro in einem Modul.
    Das Workbook_BeforeClose habe ich an das Ende des Moduls angehängt. Aber dort wird es beim Schließen überhaupt nicht angesprochen.
    Im Netz habe ich einen Hinweis gefunden, dass dieses Teil in das Modul "DieseArbeitsmappe" gehört. Ein kleiner Test funktioniert auch schon:

  • 
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
    '
    ' Testversuch
        MsgBox "Hallo - Test"
    End Sub


  • So sollte auch die ganze Sub funktionieren - hoffe ich.
    Gruß Gerd

    Bild

    Betrifft: AW: Zellen löschen vor AM schließen
    von: Rudi Maintaire
    Geschrieben am: 24.09.2015 12:23:42
    Hallo,
    Das Workbook_BeforeClose habe ich an das Ende des Moduls angehängt. Aber dort wird es beim Schließen überhaupt nicht angesprochen.
    wie auch?
    Ereignisprozeduren gehören nun mal in das entsprechende Klassenmodul.
    So sollte auch die ganze Sub funktionieren - hoffe ich.
    wird schon.
    Gruß
    Rudi

    Bild

    Betrifft: AW: Zellen löschen vor AM schließen
    von: Gerd
    Geschrieben am: 24.09.2015 21:08:57
    Hallo Rudi,
    wie soll ein "Excel gut - VBA bescheiden" User (s.o.) wissen, dass diese Ereignisprozedur in "DieseArbeitsmappe" gehört? Mit Public-Variablen im Modul klappt es wie gewünscht.
    Zusatzfrage: Wie kann ich die aktive Arbeitsmappe ohne Nachfrage an gleichem Speicherort und mit gleichem Namen speichern?
    Danke & Gruß
    Gerd

    Bild

    Betrifft: AW: Zellen löschen vor AM schließen
    von: Rudi Maintaire
    Geschrieben am: 25.09.2015 19:58:54
    Hallo,
    mit
    ActiveWorkbook.Save
    Gruß
    Rudi

    Bild

    Betrifft: AW: Zellen löschen vor AM schließen
    von: Gerd
    Geschrieben am: 29.09.2015 10:04:33
    Hallo Rudi,
    klappt wunderbar. Hatte ich inzwischen auch im Netz gefunden.
    Trotzdem Dank & Gruß
    Gerd
    Userbild

     Bild

    Beiträge aus den Excel-Beispielen zum Thema "Zellen löschen vor AM schließen"