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

Bilder zentriert und skaliert in Zellen Einfügen

Bilder zentriert und skaliert in Zellen Einfügen
26.01.2018 08:25:07
Thomas
Hallo!
Ich möchte Preisschilder für Produkte erzeugen. Alle Daten habe ich schon perfekt formatiert in unserem Online Shop. Die Daten habe ich aus der Datenbank in eine Excel - Tabelle kopiert. Nun möchte ich die Daten per sverweis in ein anderes Blatt zuweisen, welches ich als Preisschild gestaltet habe. In einem anderen Beitrag hatte ich schon Hilfe zu der formatierten Beschreibung bekommen.
Nun muss ich noch die Markenlogos und Artikelbilder einfügen, diese haben leider kein festes Format.
Das habe ich mir gestern aus Beispielen im Forum "gebastelt":
Sub importImage_in_3aufA4_multi()
Dim ws As Worksheet, rngTarget As Range, shp As Shape, myImage As Shape, strBildUrl As  _
String, bild As String
'Tabellenblatt festlegen
Set ws = ActiveSheet
' Bildname
bild = ActiveSheet.Range("D10").Value
bild1 = ActiveSheet.Range("E10").Value
' URL des Bildes
strBildUrl = "http://XXX/out/pictures/master/manufacturer/icon/" & bild
strBildUrl1 = "http://xxx/out/pictures/master/product/1/" & bild1
' Ziel-Range für das Bild
Set rngTarget = ws.Range("F17")
Set rngTarget1 = ws.Range("j17")
' Suche das Bild und lösche es falls vorhanden
For Each shp In ws.Shapes
If shp.AlternativeText = "myImageTag" Then
shp.Delete
End If
Next
For Each shp In ws.Shapes
If shp.AlternativeText = "myImageTag1" Then
shp.Delete
End If
Next
' Bild hinzufügen
Set myImage = ws.Shapes.AddPicture(strBildUrl, msoTrue, msoTrue, rngTarget.Left, rngTarget.  _
_
Top + 75, 100, -1)
Set myImage1 = ws.Shapes.AddPicture(strBildUrl1, msoTrue, msoTrue, rngTarget1.Left + 25,  _
rngTarget1.Top, 150, 150)
' #### Muster zum Bilder einfügen ### Set myImage1 = ws.Shapes.AddPicture(strBildUrl1, msoTrue,  _
_
msoTrue, rngTarget1.Left, rngTarget1.Top, rngTarget1.Width, rngTarget1.Height)'
' Bild zur wiedererkennung 'taggen'
myImage.AlternativeText = "myImageTag"
myImage1.AlternativeText = "myImageTag1"
End Sub
Aktuelles Problem:
1) wie bekomme ich die Bilder zentriert und mit einer maximalen Seitenlänge (längste Seitenlänge) von 150 skaliert in die jeweiligen Zellen (die Ausgangsbilder sind alle unterschiedlich, teilweise kleiner, teilweise größer ...)
2) Aktuell starte ich das als Makro, kann man das auch automatisch mit Änderung der Artikelnummer in Zelle A1 ausführen?
(3) wenn ich in meiner Bastelarbeit etwas unsauber / umständlich gemacht habe, dann nehme ich gerne Tipps an, wie der Code besser wäre ... :-)
Es wäre super, wenn mir jemand eine Lösung zu diesem Problem geben könnte!
DANKE!!!

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bilder zentriert & skaliert in Zellen einfügen
29.01.2018 22:22:31
Thomas
Hallo!
Leider hatte noch niemand Zeit gefunden eine Lösung meines Problems zu finden ...
In den letzten Tagen habe ich es selber versucht, bin aber leider an meinen (kaum vorhandenen) VBA Kenntnissen gescheitert... ich bekomme es einfach nicht hin :-(
Hat keiner einen Tipp wie ich die Bilder/Logos proportional verkleinert und zentriert in die Zellen bekomme?
Es wäre echt super, wenn sich jemand ein paar Minuten Zeit für mein Problem nehmen könnte. Und mir dann auch noch vielleicht einen Tipp geben könnte, wie ich VBA am Besten lernen könnte.
DANKE ! DANKE ! DANKE !
Gruß
Thomas
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige