Bilder in die Zwischenablage kopieren
#1
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


Viele Grüße
Markus
Top
#2
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!
Top
#3
Danke für deine Antwort.

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
Top
#4

.xlsm   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
Top
#5
Hi,

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ß


Angehängte Dateien
.xlsm   Kopie von Klassenliste.xlsm (Größe: 45,07 KB / Downloads: 4)
[-] Folgende(r) 1 Nutzer sagt Danke an EasY für diesen Beitrag:
  • eboger
Top
#6
Herzlichen Dank.
Ich hatte es vorher schon hinbekommen allerdings nur mit einem Button.

Bei dem Code werden beide Button nun nicht mehr mitkopiert.

Allerdings enthält er immer noch einen Fehler.
Bei der Bildgröße passt er beide Button ebenfalls mit an.

Ich habe die Größe der Button aber nun so angepasst das es nicht auffällt, wenn das Makro die Bilder verändert :19: 

Du hast mir sehr geholfen.

Danke.

.xlsm   Kopie von Klassenliste Versuch.xlsm (Größe: 45,08 KB / Downloads: 0)

Gruß

Markus
Top
#7
Hallo,

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 ...
[Bild: attachment-190.gif]
Gruß Günter
aus der Helden-, Messe-, Musik-, Buch-, Universitäts- und Autostadt Leipzig
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste