Email aus Excel versenden und Schriftart anpassen
Schritt-für-Schritt-Anleitung
- VBA-Umgebung öffnen: Drücke
ALT + F11, um den VBA-Editor in Excel zu öffnen.
- Neues Modul erstellen: Klicke auf
Einfügen und wähle Modul.
- Makro einfügen: Kopiere das folgende Makro und füge es in das Modul ein.
Sub Email_versenden()
Dim MyMessage As Object, MyOutApp As Object
Dim AWS As String
AWS = ThisWorkbook.FullName
Set MyOutApp = CreateObject("Outlook.Application")
Set MyMessage = MyOutApp.CreateItem(0)
With MyMessage
.To = "Max.Mustermann@irgendwo.de"
.Subject = "Testmeldung von Excel " & Date & Time
.Attachments.Add AWS
'Rem Word-Editor-Objekt erstellen (zum Formatieren erforderlich)
Set wdApp = .GetInspector
Set wdDoc = wdApp.WordEditor
Set wdRange = wdDoc.Range
wdRange.WholeStory
'Rem Emailtext formatieren
With wdRange
.Font.Name = "Verdana"
.Font.Size = 12
.HTMLBody = "Hallo Max <br>Anbei übersende ich Dir die aktuelle Liste. <br>Liebe Grüsse <br>Max"
.Display
End With
End With
Set MyOutApp = Nothing
Set MyMessage = Nothing
End Sub
- Makro ausführen: Schließe den VBA-Editor und gehe zurück zu Excel. Drücke
ALT + F8, wähle Email_versenden und klicke auf Ausführen.
Häufige Fehler und Lösungen
- Schriftart wird nicht übernommen: Stelle sicher, dass du die Word-Object-Library in den Verweisen aktiviert hast. Gehe zu
Extras > Verweise und aktiviere den Microsoft Word xx.x Object Library.
- Outlook öffnet nicht: Überprüfe, ob Outlook als Standard-Mailprogramm festgelegt ist.
Alternative Methoden
Anstatt VBA zu verwenden, kannst du auch die Mail-Funktion in Excel nutzen, um Emails zu versenden. Beachte jedoch, dass die Schriftart in diesem Fall nicht geändert werden kann.
Praktische Beispiele
Wenn du eine E-Mail versenden möchtest, die eine andere Schriftart verwenden soll, kannst du das folgende Beispiel verwenden:
Sub EmailMitAndererSchriftart()
Dim MyMessage As Object, MyOutApp As Object
Set MyOutApp = CreateObject("Outlook.Application")
Set MyMessage = MyOutApp.CreateItem(0)
With MyMessage
.To = "Max.Mustermann@irgendwo.de"
.Subject = "Testmail"
.HTMLBody = "<font face='Verdana' size='3'>Hallo Max,<br>Anbei die Liste.<br>Grüsse,<br>Max</font>"
.Display
End With
End Sub
In diesem Beispiel wird die HTML-Schriftart direkt im E-Mail-Text festgelegt.
Tipps für Profis
- VBA-Fehlermeldungen optimieren: Verwende
Option Explicit am Anfang deines Moduls, um sicherzustellen, dass alle Variablen deklariert sind. Dies hilft, potenzielle Fehler zu vermeiden.
- HTML-Formatierung: Nutze die Möglichkeiten von HTML, um die Schriftart und -farbe in deinem E-Mail-Text individuell zu gestalten. Du kannst CSS direkt in deine HTML-Body einfügen.
FAQ: Häufige Fragen
1. Wie ändere ich die Standardschriftart in Outlook?
Gehe zu Datei > Optionen > E-Mail > Briefpapier und Schriftarten, um die Standardschriftart für neue Nachrichten festzulegen.
2. Kann ich die Schriftart im HTML-Body anpassen?
Ja, du kannst die Schriftart im HTML-Body anpassen, indem du HTML-Tags wie <font> oder CSS verwendest.
3. Warum funktioniert die Schriftartänderung nicht?
Stelle sicher, dass die richtige Schriftart in deinem VBA-Code festgelegt ist und dass du die Word-Object-Library aktiviert hast.