435 Aufrufe
Gefragt in Tabellenkalkulation von steffen2 Experte (6.4k Punkte)

ich habe eine Excel-Datei. Diese hat mehrere Blätter. Man darf auch neue ergänzen.

Es gibt 2 mit speziellen Aufgaben: "Vorlagen" und "Muster"

Bei jeder Änderung in allen anderen Blättern soll ein Makro laufen.

Momentan starte ich das Makro mit:

Private Sub Worksheet_Change(ByVal Target As Range)

    StarteAnpassung ActiveSheet.Name

End Sub

Das geht mit diesem Blatt wie erwartet. Aber wie kann ich dafür sorgen, dass dies auch auf neuen und auf neu hinein-kopierten funktioniert?

Gruß Steffen2

4 Antworten

+1 Punkt
Beantwortet von m-o Profi (22.7k Punkte)
ausgewählt von steffen2
 
Beste Antwort

Hallo Steffen,

nutzte das Workbook-SheetChange-Ereignis:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
StarteAnpassung ActiveSheet.Name
End Sub

Damit kannst du den Code in den einzelnen Arbeitsblättern löschen und der Code funktioniert auch bei neu eingefügten Arbeitsblättern.

Gruß

M.O.

0 Punkte
Beantwortet von steffen2 Experte (6.4k Punkte)

Hallo M.O.

Danke! Das hat mein Problem schon gelöst. Dass man bei "DieseArbeitsmappe" auch Code einfügen kann, hatte ich noch nicht wahrgenommen.

Mittlerweile habe ich die Datei weiter entwickelt. Die Änderung soll nur jeweils in Spalte G bis J passieren

Kannst du mir da noch einen Tipp geben?

If Spalte G bis Spalte J editiert wurde Then

    StarteAnpassung ActiveSheet.Name

End If

Bei meinen Versuchen mit den Zellen habe ich immer nur das Betreten der Zellen hinbekommen. Aber ich benötige das Verlassen.

Gruß Steffen2

+1 Punkt
Beantwortet von m-o Profi (22.7k Punkte)

Hallo Steffen,

das kannst du mit einem Intersect-Bereich lösen:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

If Not Intersect(Target, Range("G:J")) Is Nothing Then

        StarteAnpassung ActiveSheet.Name

End If

End Sub

Das Change-Ereignis wird erst ausgelöst, wenn man die geänderte Zelle verlässt (mit RETURN, TAB oder Klick in andere Zelle). Das sollte also wie gewünscht funktionieren.

Gruß

M.O.

 

0 Punkte
Beantwortet von steffen2 Experte (6.4k Punkte)

Super. Das funktioniert auch wie es soll.

DANKE!

Gruß Steffen2

...