2. Makro manuell im schon laufenden Makro starten?(Schleife)
02.04.2025 23:54:49
Frank Dreier
habe ein Problem: Ich starte ein Makro was eine Schleife besitzt. Diese wird per "F9" im Code bei "next" (also wenn die Schleife einmal durchgelaufen ist) markiert. Wenn ich nun "F5" drücke wird immer eine Schleife durchgegangen und gewartet. Sehr schön.
Nun möchte ich aber per Button (ist schon hinterlegt und funktioniert) ein anderes, 2. Makro starten wenn Excel mit dem Schleifen-Makro bei "next" wartet aber das funktioniert nicht, da ja schon das erste Makro läuft und artig bei "next" wartet.
Das 2. Makro im Schleifen-Makro zu starten indem man es einfach reinschreibt ins Schleifen-Makro geht nicht, da das 2. Makro nur ab und zu gestartet werden soll und nicht bei jedem Schleifendurchlauf.
Frage: Gibt es eine Möglichkeit ein laufendes Makro zu unterbrechen mit so etwas wie
Problem mit der Schleife ist: Beende ich das Makro da ich nun das 2.Makro ausführen will werden alle Schleifenwerte wieder auf 0 gesetzt... und das 1. Makro mit der Schleife startet wieder mit allen Schleifenwerten bei 0... und das darf nicht sein. Das Schleifen-Makro muss nach Ausführung des 2. Makros da weitermachen wo es aufgehört hat mit allen aktuellen Schleifenwerten.
Eine Lösung habe ich schon gefunden ist aber sehr unelegant: Man externalisiert die Schleife indem man die aktuellen Schleifenwerte in unterschiedliche Zellen in Excel schreibt sobald das Schleifen-Makro einmal durchgelaufen ist und beendet es und dann immer bei Neustart des Schleifen-Makros mit +1 arbeiten im Code des Schleifen-Makros. Natürlich ist das fehleranfällig und sehr unelegant.
Es gibt auch noch die Möglichkeit bei der Unterbrechung bei "next" durch drücken von F9 im Code zum Beispiel in Zelle A1 im Arbeitsblatt: "ja" zu schreiben wenn man möchte, dass das 2. Makro ausgeführt wird. Das würde dann im Schleifen-Makro abgefragt werden ob da in A1 "ja" steht und dann würde das 2. Makro ausgeführt werden im Schleifenmakro. Problem dabei: dann muss ich via Tastatur jedes mal in A1 "ja" eingeben und das ist nervig.
Daher:
Gibt es keine Möglichkeit ein Makro zu pausieren um ein anderes Makro manuell per Tastenkombi oder Button zu starten? Vielen Dank für Ideen.
Anzeige