Excel VBA - Shapes in bestimmen Bereich kopieren

Allan Sche Sar

Lt. Commander
Registriert
Jan. 2004
Beiträge
1.912
Hallo ihr,

ich habe mich bei einem VBA Projekt verprogrammiert. Da ich ungern noch mal die ganze Struktur über den Haufen werfen würde, frage ich bei euch einmal nach einer Funktion an, mit dem ich Shapes in einem bestimmten Bereich kopieren kann.
Derzeit kopiere ich mit folgendem Befehl alle Shapes auf dem Tabellenblatt:
Code:
ThisWorkbook.Worksheets(Blatt_Vorl).DrawingObjects.Copy

Aber auf dem Blatt sind Shapes drauf, die ich benötige, aber nicht mitkopiert werden dürfen. Wie kann ich diese ausklammmern?
 
Das funktioniert leider nicht, da der Name von den Shapes gleich ist. Das außerdem müssen dann über 100 Shapes einzeln kopiert werden und auch korrekt auf dem Resultatblatt positioniert werden. Das würde ich gern umgehen, da die Position zueinander relevant ist.
 
War ja auch nur ein Beispiel. Wenn du sie automatisiert rausfiltern willst, musst du es eben über irgendeine Eigenschaft machen - irgendwie muss Excel ja wissen, was du brauchst und was nicht.

Das kann eine Positionsangabe sein, eine Größe, eine Farbe, ...

Ggf. auch über eine Zählervariable, wenn du bspw. die ersten x ausklammern willst.
 
Oder anders: Excel ist einfach zu dämlich gemacht dem User nicht mit Gewalt einen Namen, Titel, abzufordern. Da wird fleißig angelegt und wenn du mit Makro zugreifen willst kommt die Bruchlandung. Habe mich jüngst genug mit diesem Problemchen vergnügt. Geil obendrein, dass Namen doppelt möglich sind aber nur das Ur-Objekt ansprechbar ist…
Viel Vergnügen entweder zu Benamsen*) oder eben von Hand umzuschichten. Taht's XL!

CN8

*) Super, dass der Name zentriert im Feld steht, also muss man da in die Mitte klicken. Sssst saut das nach links(bündig) und du musst mit der Maus hinterher. Da kommt Freude auf!
 
Zurück
Oben