Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Per Button Mail mit Text und Logo verschicken

Begonnen von Nabimba, August 04, 2010, 12:20:32

⏪ vorheriges - nächstes ⏩

Nabimba

Hallo,

vielleicht kann mir ja jemand helfen oder mir sagen, ob so etwas schon einmal beschrieben wurde...ich habe nach langem Suchen nichts gefunden.  

Ich verschicke in einem Formular per Befehlsschaltfläche eine Mail an die dort angegebene Adresse mit einem vorgefertigtem Text.
Jetzt würde ich noch gerne über den Text ein Logo einfügen, welches auf meinem Server liegt.

Der Code lautet im Moment:

Private Sub Befehl83_Click()
   Dim olApp As Object
   
   Set olApp = CreateObject("Outlook.Application")
   With olApp.CreateItem(0)
       .Recipients.Add EMail
       .Subject = "Zugangsdaten"
       .Body = "Hallo," & vbCrLf _
             & "" & vbCrLf _
             & "Text " & vbCrLf _
             & "" & vbCrLf _
             & "" & vbCrLf _
             & "Mit Freundlichen Grüßen " & vbCrLf _
             & "" & vbCrLf _
             & "Name"

       .ReadReceiptRequested = False
       .Display
   End With
   Set olApp = Nothing
End Sub

Für das Logo hatte ich folgendes eingefügt:

.Subject = "Zugangsdaten"
       .HTMLBody = strBody & "<img src='C:\Pfadname\Logo CareDental.bmp'>"
       .Body = "Hallo," & vbCrLf _


Die Mail wird weiterhin an die richtige Person aufgemacht, aber das Logo fehlt.
Kann mir jemand sagen, wie ich ein Logo (möglichst noch oben rechts am Rand) in die Mail einfügen kann?

Danke

database

Hallo,
was mir auffält ist, dass du einen HTMLBody erzeugst aber kein HTML darin stehen hast!  :-\

HTML Dateien beginnen ALLE grundsätzlich mit dem Anfangs-Tag <HTML> und enden mit </HTML> 8)

dazwischen kannst du dann Texte und auch Bilder einbinden.
zur näheren oder weiteren Erläuterung siehe bitte bspw. hier:
http://www.vbarchiv.net/tipps/tipp_496-email-mit-anhang-unter-vba-teil2-textformatierung.html

HTH

Peter

Nabimba

#2
Danke für den Tipp.
Man merkt ja doch, dass ich mir alles irgendwie selbst zusammen gesucht habe und vom Programmieren gar keine Ahnung habe.
Ich habe mir also Hilfe geholt und habe jetzt folgende Lösung:

ich habe es so verstanden:
er hat erst den Text in HTMLString formatiert und dann den gesamten Bereich .HTMLBody = htmlString gesetzt. (das Logo wird jetzt aus dem Internet genommen)


Private Sub Befehl83_Click()
   Dim olApp As Object
   
   Dim htmlString As String
   
   htmlString = "<html xmlns='http://www.w3.org/1999/xhtml'>" & _
                   "<head>" & _
                   "<title></title>" & _
                   "</head>" & _
                   "<body>" & _
                   "<div style='text-align:right'>" & _
                   "<img alt='Logo' src='https://meine Seite.de/img/logos/.gif'/>" & _
                   "</div>" & _
                   "Hallo,<br /><br />" & _
                   "mein Text." & _
                   "<br />" & _
                   "Mein Text." & _
                   "<br />" & _
                   "<br />" & _
                   "Mit Freundlichen Grüßen  <br /><br /> Name </body> </html>"

   Set olApp = CreateObject("Outlook.Application")
   With olApp.CreateItem(0)
       .Recipients.Add EMail
       .Subject = "Zugangsdaten"
       .HTMLBody = htmlString
       .ReadReceiptRequested = False
       .Display
   End With
   Set olApp = Nothing
End Sub