Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1904to1908
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

png-Datei in Form anzeigen / alternatve

png-Datei in Form anzeigen / alternatve
08.11.2022 14:25:43
Detlev
Moin zusammen,
habe hier schon den einen oder anderen Top gefunden, aber nun brauche ich mal wirklich (kreative) Hilfe.
Ich bekomme Emails im HTLM-Format. In so einer Mail ist eine Grafik eingebettet. Sie wird als .png Attachement mitgeliefert und im HTML-Text auch angezeigt.
Mit einem VBA-Makro rufe ich ein Formular auf und sammle verschiedene Daten aus der Mail ein. AUch die Grafik möchte ich in der Form anzeigen. Leider steht nur das Image-Steuerelement zur Verfügung, welches jedoch kein .png-Format akzeptiert.
Nun suche ich eine Möglichket ....
entweder .png in einem anderen Steuerelement darzustellen (müsste über Verweis eingebunden und möglichst zum Standard gehören - fremd.dll kann ich nicht einbinden)
oder die Grafik irgend wie zu greifen und als .jpg zu speichern. Grundsätzlich müsste dies gehen, da ich es in Outlook per Maus auch kann. Grafik anklicken - Kontextmenü: Grafik speichern unter ... da kann ich das Format frei wählen. Nur wie geht genau dieser Vorgang ber VBA?
oder hat hier jemand eine andere Kreative Idee? Outlook kann die Grafik ja anzeigen, dann müsste ich das Ding doch irgendwie greifen können .... *grumpf*
Danke schon für eure Hilfe
Detlev

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: png-Datei in Form anzeigen / alternatve
08.11.2022 14:40:57
Nepumuk
Hallo Detlev,
es ist schon möglich ein .png-Bild in einem Image-Control anzuzeigen:

Private Sub UserForm_Initialize()
Dim objImageFile As Object
Set objImageFile = CreateObject(Class:="WIA.ImageFile")
Call objImageFile.LoadFile(Filename:="G:\Eigene Dateien\Eigene Bilder\Bayern.png")
Set Image1.Picture = objImageFile.FileData.Picture
Set objImageFile = Nothing
End Sub
Dazu muss aber das Bild auf der Festplatte sein. Das willst du wahrscheinlich nicht. Zeig mal wie du auf ein .png-Bild im Mail zugreifst.
Gruß
Nepumuk
AW: png-Datei in Form anzeigen / alternatve
08.11.2022 16:02:26
Detlev
Hallo Nepumuk,
wie genial ist das denn? Da such ich seit Tagen und bekomme hier in wenigen Augenblicken die perfekte Antwort.
Ich kann die Datei speichern - ist nicht so das Problem. Und es funktioniert einwandfrei *freu*
Aber wenn es eine Möglichkeit ohne speichern auf der Festplatte gibt gern.

Dim oMail As MailItem
Set oMail = Application.ActiveInspector.CurrentItem
Dim a As Attachment
Set a = oMail.Attachments(1)
Dim sFilePath As String
sFilePath = Replace(Environ("temp") + "\", "\\", "\") + a.FileName
a.SaveAsFile sFilePath
Dim objImageFile As Object
Set objImageFile = CreateObject(Class:="WIA.ImageFile")
Call objImageFile.LoadFile(FileName:=sFilePath)
Set frmKalkulation.Picture = objImageFile.FileData.Picture
Set objImageFile = Nothing
Ich bin jedenfalls schon Happy ... die Class WIA.ImageFile kannte ich nicht.
Danke schön.
VG Detlev
Anzeige
AW: png-Datei in Form anzeigen / alternatve
08.11.2022 16:21:52
Nepumuk
Hallo Detlev,
kannst du nicht über die "GetTemporaryFilePath" - Funktion der Attachment - Klasse direkt auf die Datei zugreifen? Also ohne Zwischenspeichern? Das Bild im Anhang liegt ja schon irgendwo auf deiner Festplatte.
Gruß
Nepumuk
AW: png-Datei in Form anzeigen / alternatve
08.11.2022 17:05:05
Detlev
Ich hatte es mit folgender Zeile versucht,

sFilePath = a.GetTemporaryFilePath
gibt aber eine Fehlermeldung -2147467259
"Auf die Anlage im Ordner mit den temporäre Dateien kann nicht zugegriffen werden.
Sie können die Methode in einem Anlagenereignis verwenden, um den Pfad der temporären Datei abzurufen".

Ich kann mit dieser Meldung nichts anfangen :-(
Wäre aber nicht so schlimm, ich würde mir ein eigenes Temp-Verzeichnis anlegen und dies beim Verlassen des Makros wieder brav löschen.
Falls Dir dazu jetzt auch nichts mehr einfällt, herzlichen Dank! Du hast mir prima geholfen.
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige