auch dank oft hervorragender Antworten hier im Forum habe ich es geschafft, ein mittlerweile recht aufwendiges VBA Projekt hochzuziehen. Gerade hänge ich jedoch an einem Problem, das mir Kopfzerbrechen bereitet und für das ich keine Lösung finden kann:
Ich möchte ein Tabellenblatt in eine neue Arbeitsmappe kopieren. Nichts leichter als das. Das Problem: Dieses Tabellenblatt enthält diverse Comboboxen (ActiveX-Elemente), die bereits vor dem Kopieren mit Inhalt gefüllt wurden (sowohl Auswahlmöglichkeiten als auch anzuzeigender ListIndex).
Nun stelle ich fest, dass die neue Arbeitsmappe mit besagtem Tabellenblatt zwar die für die Anzeige gewählten ListIndex-Werte mitbekommen hat (die Anzeige sieht damit zunächst einmal richtig aus), die Comboboxen aber nicht mehr die zuvor festgelegten Auswahlmöglichkeiten beihalten.
Zunächst wäre daher die Frage: Versuche ich hier etwas, was grundsätzlich nicht gehen kann? Heißt: Müssen in Excel die Comboboxen bei jedem Start neu initialisiert werden oder lassen sich die Inhalte irgendwie beim Kopieren des Tabellenblatts übertragen?
Und: Nachdem ich hier auf Granit gebissen habe, bin ich einen anderen Weg gegangen (wie ich finde unelegant): Ich wollte die Neuinitialisierung beim Öffnen der neuen Arbeitsmappe erzwingen. Allerdings führt hier Workbook_Activate() zu nichts, da dieser Befehl beim Öffnen der Arbeitsmappe nicht ausgeführt wird. Workbook_Open() dagegen existiert nicht, da es sich eben um ein kopiertes Worksheet handelt, was diesen Befehl nicht enthalten kann.
Für jeden Hinweis, der meine Ratlosigkeit ein Stück nimmt, bin ich unendlich dankbar.
Beste Grüße, Jan