20.02.2018, 10:12
Hallo Ralf,
haste es probiert?
ich ja
ohne Call gings ned
haste es probiert?
ich ja
ohne Call gings ned
![]() Forum des Excel-Verein 2015 e.V. |
Das Clever-Excel-Forum-Treffen
findet vom 19.09. - 21.09.2025 in Bad Arolsen statt. Zu den Infos kommt Ihr oben über den Link. |
Makro starten in einem anderen Tabellenblatt
|
||||||||||||||||||||||||||||||||
20.02.2018, 10:12
Hallo Ralf,
haste es probiert? ich ja ohne Call gings ned
20.02.2018, 10:22
Hi Wastl,
ja: Option Explicit Sub Test1() MsgBox ("jetzt wird Makro 2 aufgerufen!") Makro2 MsgBox ("jetzt wird Makro 2 mit CALL aufgerufen!") Call Makro2 End Sub Sub Makro2() MsgBox ("Dies ist Makro 2!") End Sub
20.02.2018, 10:42
(Dieser Beitrag wurde zuletzt bearbeitet: 20.02.2018, 10:42 von BoskoBiati.)
Hi Wastl,
die Makros laufen einwandfrei ohne irgendwelche Änderungen, das Einzige ist, die Datei muß unter Mappe1 gespeichert werden. Syntaktisch ist der Code in Ordnung. Da aber die Referenzierung fehlt, kopiert der Code die Spalten A u. B von Tab1 nach Spalte D u. E von Tab1! Das sieht dann so aus:
![]()
Gruß
Edgar Meine Antworten sind freiwillig und ohne Gewähr! Über Rückmeldungen würde ich mich freuen.
20.02.2018, 11:09
Ui,
möglicherweise bin ja auch ich völlig daneben. :05: Denn von allen Antworten hier, wird nicht auf die Aussage des TE Bezug genommen: Zitat:Um die Sache zu vereinfachen möchte ich in Tab1 ein Makro über eine Schaltfläche starten, dass beide Makros hintereinander ausführt. Wo bitte, ist in allen genialen Ausführungen von Euch die Schaltfläche berücksichtigt? Schmoll In seinem Beispiel is eine Schaltfläche in Tab1 Wenn man da drauf klickt passiert nix nada null Wenn man in dem Code zu der Schaltfläche in der 2. Zeile ein Call ganz vorne einfügt, geht was, das entsrechende Makro wird angesprochen.
20.02.2018, 11:20
Moin!
Ob per Call oder ohne ist prinzipiell erst mal Jacke wie Hose! (sieht man mal von der unterschiedlichen Behandlung eines parametrisierten Makros ab) In der Beispieldatei sind zwei Fehler:
Letzteres braucht man nur, wenn Makros aus Fremddateien aufgerufen werden sollen. Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
20.02.2018, 11:56
Hi Ralph,
deswegen erwähnte ich, dass die Makros einwandfrei laufen, wenn man die Datei als Mappe1 speichert, ansonsten schreit das Makro sofort nach der Mappe1, wenn man den Button drückt. @Wastl, die Schaltfläche tut doch. Mach doch mal das, was ich geschrieben habe, speichere die Datei vom TE unter Mappe1 und drücke den Button. Zitat:Wenn man da drauf klickt passiert nix nada null Stimmt nicht. Hast Du in Deinem aktuellen Verzeichnis eine Datei mit Namen Mappe1, dann passiert was. Am Besten kann man das feststellen, wenn man in Makro_2 oder Makro_3 einen Haltepunkt setzt, dann stoppt das Makro und der Debugger geht auf. Ansonsten steht plötzlich der Text aus A2 in D2!
Gruß
Edgar Meine Antworten sind freiwillig und ohne Gewähr! Über Rückmeldungen würde ich mich freuen.
Hallo Boskobati,
Zitat:@Wastl,Ok, ich mach und bekomme sofort einen Laufzeitfehler siehe Anhang. Und das passt haargenau zu der Aussage des TE: Zitat:Bei mir funktioniert das nicht! Was mache ich falsch? Kann mir jemand helfen?Und mein Beitrag hat genau an dem Punkt geholfen. Wenn ich mein Auto mit Wasserpumpenschaden in die Werkstatt bringe, will ich, dass sie mir die Wasserpumpe instandsetzen / erneuern und nicht auch noch das Seitenteil hinten rechts erneuern, weil es stark deformiert ist. Man kann mich darauf Aufmerksam machen, oder fragen, ob ich sie das mitmachen dürfen. Das ist die Welt aus der ich komme. Klare Frage, klare Abhilfe. Im 1. Beitrag des TE steht nix davon, dass man seine hochgeladene Beispielsdatei umbenennen muss. Ich schreib jetzt nix mehr dazu bevor sich der TE ned meldet.
20.02.2018, 17:00
Hallo Zusammen,
ich musste erst ein bischen arbeiten, deshalb melde ich mich erst jetzt. Eine Lösung habe ich gefunden, aber waum und weshalb, kann ich nicht erklären. Zuerst einmal muss ich noch sagen, dass ich die Makros über Entwicklertools und Makro aufzeichnen herstelle. - ) Als erstes müssen Makros, die Blattübergreifend arbeiten sollen in dem Blatt angefangen und beendet werden, wo sie auch aufgerufen werden sollen. -) Makros, die andere Makros aufrufen, funktionieren nicht mehr, wenn Sie per e-mail verschickt werden! Diese Makros müssen gelöscht und neu aufgebaut werden! -) Makros die in einem Tabellenblat aufgerufen werden und nur dort abgearbeitet werden, funktionieren auch nach dem verschicken per mail. Vielleicht weiß einer von Euch warum und weshalb die Makros nicht funktionieren. Die Lösung zu wissen wäre interessant. Aber bitte nicht diesen Kauderwelsch von Basic, denn das verstehe ich nicht! Vielen Dank für Euer Interesse und Eure Hilfsbereitschaft. Bernd
20.02.2018, 21:11
Hallöchen,
das ist nicht ganz so wie Du schreibst. Zitat:Als erstes müssen Makros, die Blattübergreifend arbeiten sollen in dem Blatt angefangen und beendet werden, wo sie auch aufgerufen werden sollen. Du erstellst auf einem beliebigen Blatt einen Button z.B. aus den Formularsteuerelementen und weist ihm ein Makro zu, dass irgendwo in der Datei etwas anstellt. Wenn Du am Ende auf dem Blatt mit dem Button bleiben willst, kann sein. Wenn Du am Ende wo anders sein willst, dann schreib das ins Makro. Zitat:Makros, die andere Makros aufrufen, funktionieren nicht mehr, wenn Sie per e-mail verschickt werden! Diese Makros müssen gelöscht und neu aufgebaut werden! Es wäre sicher von Vorteil, wenn Du die Excel-Datei mit den Makros verschickst und nicht nur die Makros. Du musst auch nichts löschen und neu aufbauen. Wenn Dein Makro jedoch auf eine Datei in einem bestimmten Pfad zugreift und der Empfänger das eine oder andere nicht hat, muss was angepasst werden. Ralf hat ja auch schon geschrieben, dass da eine Datei nicht gefunden wird ... Und wenn ein Makro ein anderes aufruft, musst Du natürlich beide verschicken ... Code: Makros die in einem Tabellenblat aufgerufen werden und nur dort abgearbeitet werden, funktionieren auch nach dem verschicken per mail. Wäre schlimm, wenn nicht. Ansonsten siehe meine Anmerkungen zu den beiden anderen Aussagen.
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365) | ||||||||||||||||||||||||||||||||
|