05.06.2019, 11:38 (Dieser Beitrag wurde zuletzt bearbeitet: 05.06.2019, 11:55 von eboger.
Bearbeitungsgrund: zu viele unbenötigte Infos
)
Guten Tag.
In meiner Exelliste befinden sich Bilder die ich per Makro kopiere um sie dann manuell auf einem anderen Blatt einzufügen. Das Makro funktioniert soweit und bislang habe ich es mit "Strg Taste" ausgelöst.
Nun wollte ich einen Button auf dem ersten Blatt einfügen und das Makro zuordnen. Auch das funktioniert. Allerdings mit einem unerfreulichen Nebeneffekt.
Wenn ich auf den Button klicke kopiert er nicht nur die Bilder sondern auch den Button, den er offensichtlich als Bild erkennt. Wie verhindere ich das denn?
Vermutlich ist mein Makro zu Allgemein?
Ziel: Alle Bilder die in der Spalte B4, B5, B6 ff sind, egal ob 3 oder 50 oder 100, in die Zwischenablage kopieren ohne den Button.
Hier das Makro welches ich zum kopieren benutze:
Sub Bilder_in_Zwischenablage() Dim Picture As Shape For Each Picture In ActiveSheet.Shapes Picture.Select Replace:=False Next Selection.Copy End Sub
05.06.2019, 12:11 (Dieser Beitrag wurde zuletzt bearbeitet: 05.06.2019, 12:25 von EasY.)
Hi,
Ungetestet, da keine Datei dabei ist: dein Button hat ja einen Namen ("Rechteck1" bspw.). Mit deiner For-each-Schleife sprichst du alle Bilder an. Du müsstest nun dieses eine "Bild" davon ausnehmen, vielleicht in etwa so
Code:
Sub Bilder_in_Zwischenablage() Dim Picture As Shape For Each Picture In ActiveSheet.Shapes If Picture.Name <> "Rechteck1" Then Picture.Select Replace:=False End If Next Selection.Copy End Sub
Edit: Habs eben fix nachgebaut. Wenn du dem Button einen eindeutigen Namen zuweist, klappt es. Den vorgefertigten Namen wollte er nicht nehmen!
Habe die Zeile mal so wie du gepostet hast eingebaut.
Egal welchen Namen ich dem Button gebe. Er kopiert ihn mit.
Sub Bilder_in_Zwischenablage() Dim Picture As Shape For Each Picture In ActiveSheet.Shapes If Picture.Name <> "Kopieren" Then Picture.Select Replace:=False End If Next Selection.Copy
05.06.2019, 14:11 (Dieser Beitrag wurde zuletzt bearbeitet: 05.06.2019, 14:52 von eboger.)
Klassenliste.xlsm (Größe: 44,8 KB / Downloads: 3)
Ich habe hier mal meine Exeldatei angehangen.
Irgendwie ignoriert Exel mich.
Drücke ich "Bildgroesse" verändert er auch den Button "Kopieren" und den "Bildgroesse". Da soll er ja nur eingefügte Bilder verändern. Drücke ich "Kopieren" kopiert er eingefügte Bilder. Aber auch beide Button.
Wobei ich bei beiden Makros noch den zweiten Button namen eintragen muss aber nicht weiss wie. Ich weiss auch das es nur Kosmetik ist weil die Makros funktionieren ja auch ohne die Button. Sieht aber schoen aus. Gruß Markus
ja das habe ich gesehen, dass das nicht geklappt hat. Wenn du den Button mit rechter Maustaste anklickst - also nicht das Makro ausführst - dann wird es markiert. In einem Beschriftungsfeld oben links siehst du dann den Namen des Buttons bzw des Objekts. Da kann der geändert werden.
Schau dir mal die Datei an, die ich dir angehängt habe. Das Zwischenablage-Makro sollte so funktionieren.
Gruß
Folgende(r) 1 Nutzer sagt Danke an EasY für diesen Beitrag:1 Nutzer sagt Danke an EasY für diesen Beitrag 28 • eboger
das geht aber viel einfacher! Jeder Button hat "Eigenschaften", wo man vieles einstellen kann - Farbe, Schrift, Größe, Position, Schatten und eben auch, ob er mit gedruckt und damit mit kopiert werden soll oder nicht. Zumindest trifft das für alle ActiveXSteuerelemente zu ...
Gruß Günter aus der Helden-, Messe-, Musik-, Buch-, Universitäts- und Autostadt Leipzig