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

Makro per VBA zuweisen (OnAction) / Problem beim Kopieren

Forumthread: Makro per VBA zuweisen (OnAction) / Problem beim Kopieren

Makro per VBA zuweisen (OnAction) / Problem beim Kopieren
14.01.2026 14:20:01
StefanK
Hallo zusammen,
ich habe mir ein Tabellenblatt mit div. Buttons als Vorlage erstellt. Den Button sind Makros zugewiesen, welche alle in dem zur Tabelle gehörenden Modul liegen. Per Makro kopiere ich nun das Blatt und gebe diesem einen neuen Namen. Das Problem ist, dass alle Button immer noch auf das Modul der Vorlage verweisen, und nicht auf das Modul des neuen / kopierten Blattes. Gibt es dafür eine andere Lösung ?
Ich habe dann versucht mit OnAction den Code für jeden Button neu zuzuweisen. Excel verwendet dabei aber immer die Tabelle statt den Blattnamen (also 'Testdatei.xlsm'!Tabelle1.Makro1). Ich weiß nicht, wie ich das schreiben muss bzw. wie ich über den Blattnamen die Tabelle herausbekomme.
Habt Ihr eine Idee... ?

Vielen herzlichen Dank für Eure Unterstützung.
Gruß Stefan

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro per VBA zuweisen (OnAction) / Problem beim Kopieren
14.01.2026 14:48:17
daniel
Hi
für eine Vorlage ist es sinnvoller, die Buttons aus den ActiveX-Controls zu verwenden.
da liegen die Codes ebenfalls im Modul der Tabelle und dann wird alles automatisch in die neue Datei übernommen, wenn du das Tabellenblatt der Vorlage in eine neue Datei kopierst.
Wenn also die "normalen" Buttons nicht funktional zwingend notwendig sind, stelle um auf ActiveX-Buttons


wenn du die normalen Buttons behalten willst, dann müsstest das OnAction.Makro neu zuweisen.
hier wird der Codename des Tabellenblatts verwendet.
diesen kannst du bei bedarf so ermitteln:
ActiveSheet.CodeName

oder wenn der "normale" Name bekannt ist:
Sheets("xxx").Codename


Gruß Daniel
Anzeige
AW: Makro per VBA zuweisen (OnAction) / Problem beim Kopieren
14.01.2026 15:01:38
StefanK
Moin Daniel, vielen lieben Dank.

Der "CodeName" war mit noch nicht bekannt, nun klappt die Zuweisung mit OnAction. Aber ich schaue mir das mit den ActiveX-Button auch noch einmal an. Die sind ja optisch nicht so schön (das Auge klickt ja mit 😉), aber der Aufwand wäre beim Kopieren viel geringer...

Hab einen schönen Tag, viele Grüße
Stefan
Anzeige
AW: Makro per VBA zuweisen (OnAction) / Problem beim Kopieren
14.01.2026 15:08:32
daniel
der Funktionale Grund für die zwingende Verwendung von "normale" Buttons wäre, dass das selbe Makro von mehreren Buttons verwendet wird und die Differenzierung, welcher Button gedrückt wurde dann über die Abfrage im Makro erfolgt (Application.Caller) und so unterschiedliche Aktionen ausgeführt werden.
Bei ActiveX benötigt jeder Button sein eigenes Makro, oder eine fortgeschrittene Programmiertechnik muss verwendet werden.

Gruß Daniel
Anzeige
Das mit der...
14.01.2026 15:23:51
Case
Moin Stefan, :-)

... ActiveX-Geschichte würde ich mir aber gründlich überlegen. ;-)

In den neuen Office-Versionen ist es schon abgeschaltet (muss also zwingend aktiviert werden). ;-)

https://support.microsoft.com/de-de/office/activex-steuerelemente-sind-in-microsoft-365-und-office-2024-standardm%C3%A4%C3%9Fig-deaktiviert-9cae60f8-478c-42c6-978c-eca072525d64
https://www.heise.de/news/Vollzug-bei-Microsoft-365-ActiveX-wird-jetzt-abgedreht-10353306.html

Es hat auch in der Vergangenheit immer wieder Probleme mit ActiveX-Komponenten gegeben. ;-)

Ich würde sie nicht mehr einsetzen. ;-)

Servus
Case
Anzeige
AW: Das mit der...
14.01.2026 15:28:38
StefanK
Hallo Case, danke für den Hinweis. Das lese ich mir in Ruhe durch 👍🏻 Für mich ein Grund mehr, den höheren Aufwand zu betreiben, die Makros neu zuzuweisen... Klappt aber bisher gut mit dem Tip von Daniel (.CodeName).

Viele Grüße
Stefan

Forumthreads zu verwandten Themen

Anzeige