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

Forumthread: Mail aus VBA - Formatierung

Mail aus VBA - Formatierung
07.02.2006 17:12:22
Wolfgang
Hallo,
mit dem folgenden Code erstelle ich ein Mail direkt aus VBA:
Dim objOutlook As Object
Dim objMail As Object
btext = "fett und farbig"
Set objOutlook = CreateObject("Outlook.Application")
Set objMail = objOutlook.CreateItem(0)
With objMail
.To = Emailempfänger_an
.cc = Emailempfänger_cc
.Subject = "Betreff"
.body = "Sehr geehrte Damen und Herren," & Chr(10) & Chr(10) & btext
.display
End With
Set objOutlook = Nothing
Set objMail = Nothing
Wie bekomme ich nun "fett und farbig" auch wirklich FETT und FARBIG.
Wie immer in Erwartung kreativer Vorschläge...
Wolfgang
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mail aus VBA - Formatierung
07.02.2006 17:28:58
Josef
Hallo Wolfgang!
Z.B. so!
Dim objOutlook As Object
Dim objMail As Object
Dim btext As String

btext = "<b>fett</b> und <font color=red>farbig</font>"

Set objOutlook = CreateObject("Outlook.Application")
Set objMail = objOutlook.CreateItem(0)
With objMail
  .To = ""
  .cc = ""
  .Subject = "Betreff"
  .HTMLbody = "Sehr geehrte Damen und Herren," & "<br><br>" & btext
  .display
  
End With

Set objOutlook = Nothing
Set objMail = Nothing

'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: Mail aus VBA - Formatierung
07.02.2006 17:48:28
Wolfgang
Hallo Sepp,
funktioniert Super.
Leider funktioniert im HTMLbody jetzt was anderes nicht.
ich hatte im Body einen Link, und zwar mittels
file:pfad in spitzer Klammer
Kannst du mir sagen wie ich sowas im HTMLbody hinbekomme?
Danke!!!
Wolfgang
AW: Mail aus VBA - Formatierung
07.02.2006 17:48:48
Wolfgang
Hallo Sepp,
funktioniert Super.
Leider funktioniert im HTMLbody jetzt was anderes nicht.
ich hatte im Body einen Link, und zwar mittels
file:pfad in spitzer Klammer
Kannst du mir sagen wie ich sowas im HTMLbody hinbekomme?
Danke!!!
Wolfgang
Anzeige
AW: Mail aus VBA - Formatierung
07.02.2006 17:53:58
Nepumuk
Hallo Wolfgang,
wenn du Frontpage oder einen anderen HTML-Editor hast, mach das mal darin. Dann siehst du wie der Code aussieht.
Gruß
Nepumuk

AW: Mail aus VBA - Formatierung
07.02.2006 18:05:49
Josef
Hallo Wolfgang!
Vom Prinzip her so!
Dim objOutlook As Object
Dim objMail As Object
Dim btext As String, sLink As String

btext = "<b>fett</b> und <font color=red>farbig</font>"
sLink = "<br><a href=""file://F:\Temp\test.jpg"">Link</a>"

Set objOutlook = CreateObject("Outlook.Application")
Set objMail = objOutlook.CreateItem(0)
With objMail
  .To = ""
  .cc = ""
  .Subject = "Betreff"
  .HTMLbody = "Sehr geehrte Damen und Herren," & "<br><br>" & btext & sLink
  .display
  
End With

Set objOutlook = Nothing
Set objMail = Nothing

'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: Mail aus VBA - Formatierung
08.02.2006 07:42:59
Wolfgang
Hallo,
DANKE an alle, klappt wunderbar.
Wart mir eine große Hilfe.
Wolfgang
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Mail aus VBA - Formatierung


Schritt-für-Schritt-Anleitung

Um eine E-Mail aus VBA zu erstellen und Text im HTML-Format zu formatieren, kannst du den folgenden VBA-Code verwenden. Dieser Code stellt sicher, dass der Text in Fettschrift und farbig dargestellt wird:

Dim objOutlook As Object
Dim objMail As Object
Dim btext As String
btext = "<b>fett</b> und <font color='red'>farbig</font>"

Set objOutlook = CreateObject("Outlook.Application")
Set objMail = objOutlook.CreateItem(0)

With objMail
    .To = "Emailempfänger_an"
    .cc = "Emailempfänger_cc"
    .Subject = "Betreff"
    .HTMLBody = "Sehr geehrte Damen und Herren,<br><br>" & btext
    .Display
End With

Set objOutlook = Nothing
Set objMail = Nothing

Dieser Code verwendet .HTMLBody anstelle von .Body, um die Formatierung zu ermöglichen. Achte darauf, dass du den richtigen E-Mail-Empfänger einsetzt.


Häufige Fehler und Lösungen

  • Problem: Der HTML-Code wird nicht korrekt interpretiert.

    • Lösung: Stelle sicher, dass du .HTMLBody anstelle von .Body verwendest. HTML-Formatierungen funktionieren nur mit .HTMLBody.
  • Problem: Links im Body werden nicht angezeigt oder sind nicht klickbar.

    • Lösung: Verwende den richtigen HTML-Link-Tag. Zum Beispiel:
      sLink = "<br><a href='file://F:\Temp\test.jpg'>Link</a>"

Alternative Methoden

Eine Alternative zur Verwendung von VBA ist die Verwendung eines HTML-Editors, um den benötigten HTML-Code zu erstellen. Du kannst dann den generierten Code einfach in dein VBA-Skript einfügen. Tools wie Frontpage oder Online-HTML-Editoren können hier hilfreich sein.


Praktische Beispiele

Hier ist ein Beispiel, wie du mehrere Formatierungen in deinem E-Mail-Body kombinieren kannst:

Dim btext As String
Dim sLink As String

btext = "<b>fett</b> und <font color='red'>farbig</font>"
sLink = "<br><a href='file://F:\Temp\test.jpg'>Mein Bild</a>"

With objMail
    .HTMLBody = "Sehr geehrte Damen und Herren,<br><br>" & btext & sLink
    .Display
End With

Dieses Beispiel zeigt, wie du Text und Links in deinem E-Mail-Body kombinieren kannst, um eine ansprechende Formatierung zu erreichen.


Tipps für Profis

  • Nutze CSS-Styles für eine umfassendere Formatierung.
  • Teste deine E-Mails in verschiedenen E-Mail-Clients, da die Unterstützung von HTML variieren kann.
  • Verwende mailto: Links für einfache Kontaktmöglichkeiten:
    "<a href='mailto:email@example.com'>Kontakt</a>"

FAQ: Häufige Fragen

1. Wie kann ich Text fett schreiben?
Verwende <b> oder <strong> im HTML-Body, um Text fett darzustellen.

2. Wie formatiere ich den E-Mail-Betreff?
Die Formatierung des Betreffs ist in VBA nicht möglich. Der Betreff ist immer normal. Du kannst jedoch die .Subject Eigenschaft verwenden.

3. Funktioniert dieser Code in allen Excel-Versionen?
Ja, der Code sollte in den meisten modernen Excel-Versionen funktionieren, die VBA unterstützen, einschließlich Excel 2010 bis 2021.

4. Kann ich Bilder im E-Mail-Body einfügen?
Ja, du kannst Bilder über Links einfügen, indem du den <img> Tag im HTML-Body verwendest.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige