Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makro beim verlassen einer Tabelle ausführen

Forumthread: Makro beim verlassen einer Tabelle ausführen

Makro beim verlassen einer Tabelle ausführen
20.11.2002 08:48:06
Marco
Hi Leute,
ich möchte beim verlassen einees Tabellenblattes noch ein Makro ausführen, welches eine Kopie innerhalb der zu verlassenden Tabelle ausführt. Das "Kopie" Makro habe ich. Habe es schon mit Worksheet_Deactivate() versucht, aber da bezieht es das Makro nicht auf die verlassene Tabelle.
Wie mache ich das?

Danke Marco

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Makro beim verlassen einer Tabelle ausführen
20.11.2002 08:51:43
Steffen D
Hi Marco,

hast du es schon mit Workbook_BeforeClose probiert?
Also in der Art und Weise:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call Kopie 'Dein Code kommt hier rein
End Sub

Re: Makro beim verlassen einer Tabelle ausführen
20.11.2002 09:06:53
Marco
Hi Steffen,
ich habe mehrere Tabellen, und möchte beim Tabellenwechsel das Makro ausführen. Ich möchte die Datei nicht schließen!

Geht das mit deinem Vorschlag?

Marco

Anzeige
Re: Makro beim verlassen einer Tabelle ausführen
20.11.2002 09:12:54
Steffen D
Ich habe es falsch verstanden,
aber hiermit müsste es gehen:

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
MsgBox "Tabelle gewechselt"

End Sub

bei mir funktionierts,
du muss den code in "DieseArbeitsmappe" kopieren und statt "MsgBox..." deinen Code einfügen


Steffen

Anzeige
Re: Makro beim verlassen einer Tabelle ausführen
20.11.2002 09:30:47
Marco
Danke
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Makro beim Verlassen einer Tabelle ausführen


Schritt-für-Schritt-Anleitung

Um ein Makro beim Verlassen eines Tabellenblattes in Excel auszuführen, kannst Du den Workbook_SheetDeactivate-Ereignis verwenden. Folge diesen Schritten:

  1. Öffne den VBA-Editor:

    • Drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.
  2. Gehe zu "DieseArbeitsmappe":

    • Im Projekt-Explorer auf der linken Seite, suche Deine Arbeitsmappe und doppelklicke auf "DieseArbeitsmappe".
  3. Füge den Code ein:

    • Kopiere und füge den folgenden Code in das Modul ein:
    Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
       Call Kopie 'Hier den Namen Deines Makros einfügen
    End Sub
  4. Speichere die Änderungen:

    • Vergiss nicht, Deine Änderungen zu speichern, bevor Du den VBA-Editor schließt.

Jetzt wird das Makro "Kopie" jedes Mal ausgeführt, wenn Du das aktive Tabellenblatt wechselst.


Häufige Fehler und Lösungen

Problem: Das Makro wird nicht ausgeführt, wenn ich das Tabellenblatt wechsle.
Lösung: Stelle sicher, dass Du den Code im Modul "DieseArbeitsmappe" eingefügt hast und dass das Makro "Kopie" korrekt benannt ist.

Problem: Ich erhalte eine Fehlermeldung, wenn ich den Code teste.
Lösung: Überprüfe, ob alle verwendeten Variablen und Makros korrekt definiert sind. Achte darauf, dass die Syntax im VBA-Editor korrekt ist.


Alternative Methoden

Falls die oben beschriebene Methode nicht Deinen Anforderungen entspricht, kannst Du auch die Workbook_BeforeClose-Methode ausprobieren, wenn Du das Arbeitsbuch schließen möchtest. Diese funktioniert jedoch nicht beim Wechseln zwischen Tabellenblättern. Für den gewünschten Effekt beim Tabellenschalten bleibt Workbook_SheetDeactivate die beste Option.


Praktische Beispiele

Hier ist ein einfaches Beispiel für ein Makro, das beim Verlassen eines Tabellenblattes eine Kopie eines bestimmten Bereichs anlegt:

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
    Sh.Range("A1:B10").Copy Destination:=Sh.Range("D1")
End Sub

In diesem Beispiel wird der Bereich A1:B10 kopiert und in D1 des verlassenen Tabellenblattes eingefügt.


Tipps für Profis

  • Verwendung von Variablen: Du kannst die Namen der Tabellenblätter in Variablen speichern, um den Code flexibler zu gestalten.
  • Fehlerbehandlung: Implementiere Fehlerbehandlung in Deinen Makros, um unerwartete Situationen elegant zu handhaben.
  • Dokumentation: Kommentiere Deinen Code gut, um später leichter nachvollziehen zu können, was jeder Teil des Codes bewirken soll.

FAQ: Häufige Fragen

1. Frage
Kann ich mehrere Makros beim Verlassen eines Tabellenblattes ausführen?
Antwort: Ja, Du kannst mehrere Call-Befehle untereinander einfügen, um verschiedene Makros auszuführen.

2. Frage
Funktioniert dies in Excel 2016 und neuer?
Antwort: Ja, die beschriebene Methode funktioniert in Excel 2016, 2019 und Office 365.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige