Pfad eines in Sheet eingebetteten Bildes
Hi!
ich möchte gerne ein in ein tabellenblatt eingefügtes bild in eine email anhängen und einbetten. das alles klappt ganz gut mit pfaden auf die entsprechenden bilder. jetzt muss ich aber ein bild in ein excel-sheet einfügen und mit in die email einbetten. folgenden code verwende ich dafür:
auch hier kommt der fehler
es kommt immer der fehler "datentypen" unverträglich. bekomme ich irgendwie einen ganz normalen pfad der grafik her?
für jede idee sehr dankbar.
mfg
gluehbirne
ich möchte gerne ein in ein tabellenblatt eingefügtes bild in eine email anhängen und einbetten. das alles klappt ganz gut mit pfaden auf die entsprechenden bilder. jetzt muss ich aber ein bild in ein excel-sheet einfügen und mit in die email einbetten. folgenden code verwende ich dafür:
Dim objlogo As Object
Dim emblogo As String
Set objlogo = imsg.addrelatedbodypart(Workbooks(ActiveWorkbook.Name).Worksheets("sicherung").Pictures("Grafik 1"), "embedded2", cdoreftypeid)
objlogo.Fields.Item("urn:schemas:mailheader:Content-id") = "<embedded2>"
objlogo.Fields.Update
emblogo = "<img src=" & Chr(39) & "cid:embedded2" & Chr(39) & ">"
auch hier kommt der fehler
ActiveSheet.Shapes.Range(Array("Grafik"))
es kommt immer der fehler "datentypen" unverträglich. bekomme ich irgendwie einen ganz normalen pfad der grafik her?
für jede idee sehr dankbar.
mfg
gluehbirne
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 232743
Url: https://administrator.de/contentid/232743
Ausgedruckt am: 22.11.2024 um 18:11 Uhr
3 Kommentare
Neuester Kommentar
Hallo gluehbirne,
http://stackoverflow.com/questions/18232987/export-pictures-from-excel- ...
Grüße Uwe
bekomme ich irgendwie einen ganz normalen pfad der grafik her?
nein, bekommst du nicht so einfach. Hier musst du entweder mit der .CopyPicture Methode des Shapes arbeiten um die Grafik in die Zwischenablage zu kopieren, und dann in der Nachricht wieder einzufügen, oder du nutzt diese Methode um diese Grafik in ein Chart-Objekt einzfügen welches die gleiche Größe wie das Bild bekommt, denn das Chart-Objekt bietet eine Funktion (Export) um den Inhalt als Bild in das Dateisystem zu exportieren. Von da aus kannst du es dann in deine Mail einbauen.http://stackoverflow.com/questions/18232987/export-pictures-from-excel- ...
Beispiel Shape als Bild abspeichern:
Sub TestExport()
Set myshape = Worksheets(1).Shapes(1)
SaveShapeAsImage myshape, "D:\image.jpg", "JPG"
End Sub
Sub SaveShapeAsImage(ByVal shp As Shape, strPath As String, fileFormat As String)
Dim co As ChartObject
shp.CopyPicture
Set co = ActiveWorksheet.ChartObjects.Add(500, 500, 100, 100)
With shp
co.Width = .Width
co.Height = .Height
End With
co.Chart.Paste
co.Chart.Export strPath, fileFormat
co.Delete
End Sub
jetzt muss ich aber ein bild in ein excel-sheet einfügen und mit in die email einbetten.
Warum nutzt du dann nicht den Pfad des Bildes welchen du zum Einbetten in Excel genommen hast ?Grüße Uwe
Zitat von @gluehbirne:
ich weiß ja nicht was du tust - aber ich bewundere es, dass du scheinbar immer eine lösung findest - scheinbar
recherchiere ich falsch ^^
Also ich bin einer der Sorte, die erst mal die Hilfen und Referenzen der jeweiligen Programme studieren als immer direkt Google zu bemühen (0,3 kWh Strom / Google-Anfrage sind mir dafür dann doch zu viel). Sicher gehört auch Erfahrung dazu, aber wenn du unbedingt Google dazu benutzen willst sei dir unbedingt angedacht, auf Englisch zu suchen => das bringt dir mehr gute Ergebnisse.ich weiß ja nicht was du tust - aber ich bewundere es, dass du scheinbar immer eine lösung findest - scheinbar
recherchiere ich falsch ^^
Grüße Uwe