Outlook: Standardformatierung für E-Mails einstellen (Größe und Art der Schrift etc.)

Beim Senden einer E-Mail in Outlook (egal ob neue Nachricht, Antwort oder Weiterleitung) führt der Mailclient oft ungewollte Änderungen an der Schriftart und Schriftgröße, dem Zeilenabstand etc. durch. Er richtet sich dabei nach der Formatierung der letzten E-Mail oder nach der Standardformatierung. Das Problem betrifft insbesondere die Absatzeinstellungen.

In MS Word und anderen Schreibprogrammen drückt man auf die Eingabe-Taste, um einen neuen Absatz zu beginnen. Für eine neue Zeile drückt man gleichzeitig auf Umschalt + Eingabe. In Outlook ist das kein Unterschied. Egal ob man die Eingabe oder Umschalt + Eingabe drückt, es wird eine neue Zeile erstellt. Für einen Absatz muss der Anwender 2x die Taste drücken. Es führt dazu, dass der Text je nach Mailclient unterschiedlich dargestellt wird.

Anstatt die Eingabe-Taste zweimal zu drücken, kann man die Standardformatierung, also den normalen Stil in Outlook anpassen. Der Nachteil ist, dass der normale Stil nur für neue Nachrichten, also nicht für Antworten und Weiterleitungen, angewendet wird.

Ein anderer möglicher Ansatz wäre, einen benutzerdefinierten Stil zu hinterlegen, welcher im Gegensatz zu dem normalen Stil auch für Antworten und Weiterleitungen greift. Auch diese Lösung hat eine Schwachstelle, denn der neue Stil wird nicht als Standard festgelegt, sondern muss beim Öffnen des E-Mail-Fensters jedes Mal neu ausgewählt werden.

Die vollständige Lösung ist also ein benutzerdefinierter Stil, welcher durch ein Outlook-Makro als Standard gesetzt wird und sowohl für neue E-Mails als auch für Antworten / Weiterleitungen greift. Nachfolgend finden Sie eine detaillierte Anleitung für die Config.

Zunächst definieren Sie Ihren Stil. Dafür erstellen Sie in Outlook eine neue E-Mail und tippen Sie ein paar Worte ein. Markieren Sie Ihren Text und in dem eingeblendeten Menü gehen Sie auf Styles, Create a style.

Outlook-Text-Menü mit Create a style-Button

Es wird ein Fenster geöffnet, wo Sie Ihren Stil benennen können, z.B. Custom Style 1. Anschließend gehen Sie auf Modify, um die Formatierung anzupassen. Nachstehend finden Sie einen Screenshot mit allen Einstellungen, die greifen sollen. In aller Kürze sind es:

  • Die Option Style based on muss auf (no style) eingestellt werden
  • Unter Formatting definieren Sie die Schriftart und Schriftgröße, z.B. Arial, 11
  • Die Option New documents based on this template muss eingecheckt werden
  • Klicken Sie auf den Button Format und öffnen Sie das Fenster Paragraph. Unter Spacing setzen Sie den Wert After auf 12 pt, Line spacing auf At least und den Wert At auf 14 pt.

Einrichtung eines neuen Stils für Outlook-E-Mails

Alle Änderungen bestätigen Sie mit OK, um zu Ihrer E-Mail zurückzugelangen. Senden Sie sie an sich selbst oder an eine andere E-Mail-Adresse. Dasselbe tun Sie für Antworten und Weiterleitungen. Zum Schluss testen Sie Ihren neuen Stil an unterschiedlichen Nachrichten, insbesondere an jenen, die von anderen Anwendern kommen.

Mit einem Makro legen Sie Ihren benutzerdefinierten Stil als Standard fest. Tun Sie Folgendes:

  1. In der Multifunktionsleiste gehen Sie zum Tab Developer.
  2. Klicken Sie auf Macro Security, Enable all macros.
  3. Klicken Sie auf den Button Visual Basic. Im VB-Fenster gehen Sie auf Tools, References.

Outlook: Virtual Basic-Fenster

Stellen Sie sicher, dass in der Liste Available References folgende Optionen vorhanden sind:

  • Visual Basic For Applications
  • Microsoft Outlook 15.0 Object Library
  • OLE Automation
  • Microsoft Office 15.0 Object Library
  • Microsoft DAO 3.6 Object Library
  • Microsoft Word 15.0 Object Library

WICHTIG: Einige Bibliotheken werden mit Versionsnummer angezeigt, welche von der Version Ihrer MS Office-Suite abhängt. Für MS Office 2013 ist das die Version 15.0, für Office 2010 die 14.0, und für Office 2007 die 12.0. Die Microsoft DAO Object Library ist gleich für alle Office-Suiten.

  1. Wenn alle Referenzen vorhanden sind, klicken Sie auf den Button OK.
  2. Bleiben Sie in Visual Basic und öffnen Sie das Projektfenster, indem Sie das Projektverzeichnis links ausrollen und 2x auf ThisOutlookSession klicken:

Outlook: VB-Fenster für Makros

  1. In das eingeblendete Fenster fügen Sie diesen Makro-Code ein:
Public WithEvents OutlookInspectors As Outlook.Inspectors
Public WithEvents myOlExp As Outlook.Explorer
Public WithEvents myIns As Outlook.Inspector

'startup Outlook
Private Sub Application_Startup()
    Set OutlookInspectors = Application.Inspectors
    Set myOlExp = Application.ActiveExplorer
End Sub
    
Private Sub OutlookInspectors_NewInspector(ByVal Inspector As Inspector)
    Set myIns = Inspector
End Sub

Private Sub myOlExp_InlineResponse(ByVal item As Object)

'Change the name of the style to your own
'The name is case sensitive
Dim objStyleName As String
objStyleName = "Custom Style 1"

    Dim objEditor As Word.Document
    Dim objStyle As Word.Style
    'Check if the message is Plain Text. If so - end the macro as Plain Text does not support styles
    'Bodyformat:
    '1 - plain text
    '2 - html
    '3 - rtf
    If ActiveExplorer.ActiveInlineResponse.BodyFormat = 1 Then Exit Sub
    Set objEditor = ActiveExplorer.ActiveInlineResponseWordEditor
    Set objStyle = objEditor.Styles.item(objStyleName)
    
    'No need to set the same style again - it can break copy-paste option and duplicate text
    'If you have changed style to other than defined in objStyleName program can still duplicate text
    If objEditor.Windows(1).Selection.Style = objStyle Then Exit Sub
    objEditor.Windows(1).Selection.Style = objStyle
    
    Set objEditor = Nothing
    Set objStyle = Nothing
    
End Sub

Private Sub myIns_Activate()
'Change the name of the style to your own
'The name is case sensitive
Dim objStyleName As String
objStyleName = "Custom Style 1"

    If myIns.IsWordMail() = False Then Exit Sub
    Dim objEditor As Word.Document
    Dim objStyle As Word.Style
    Dim objItem As Object
    
    Set objItem = myIns.CurrentItem
    'Check if object is empty
    If objItem Is Nothing Then Exit Sub
    
    'Check the type of the item np. Meeting request
    Dim iStringPos As Integer
    iStringPos = InStr(objItem.MessageClass, "IPM.Note")
    If iStringPos = 0 Then Exit Sub
    'If the object is flagged as sent, it means this is the uneditable content
    If objItem.Sent = "True" Then Exit Sub
    
    'Check if the message is Plain Text. If so - end the macro as Plain Text does not support styles
    'Bodyformat:
    '1 - plain text
    '2 - html
    '3 - rtf
    If objItem.BodyFormat = 1 Then Exit Sub
    If myIns.EditorType = olEditorWord Then
       Set objEditor = myIns.WordEditor
       Set objStyle = objEditor.Styles.item(objStyleName)
       If objStyle Is Nothing Then Exit Sub
    
    'No need to set the same style again - it can break copy-paste option and duplicate text
    'If you have changed style to other than defined in objStyleName program can still duplicate text
    If objEditor.Windows(1).Selection.Style = objStyle Then Exit Sub
    objEditor.Windows(1).Selection.Style = objStyle
    End If
    
    Set objEditor = Nothing
    Set objStyle = Nothing
    Set objItem = Nothing

End Sub

Ändern Sie den Stilnamen wie in den Makro-Kommentaren beschrieben. In diesem Fall Custom Style 1.

  1. Speichern Sie das Projekt, indem Sie auf das blaue Disketten-Symbol klicken, oder drücken Sie Strg + S.
  2. Starten Sie Outlook neu.

Das war’s – von nun an wird Ihr Stil angewendet, jedes Mal wenn Sie in Outlook eine Nachricht verfassen. Das gilt auch für den Fall, dass Sie auf eine E-Mail mit abweichender Formatierung antworten. Auf diese Weise stellen Sie sicher, dass das Design Ihrer Korrespondenz immer gleich bleibt.

13 thoughts on “Outlook: Standardformatierung für E-Mails einstellen (Größe und Art der Schrift etc.)


  1. @Tomek Stempniewicz:
    Danke für den Hinweis, funktioniert leider nicht in Outlook 2003. Im Code sind zwar keine “versionsabhängigen” Bibliotheks-Referenzen ersichtlich, aber einige Klassen dürfte es in Outlook / Office 2003 noch nicht geben. Die erste Fehlermeldung “Automatisierungsfehler – Bibliothek nicht registriert” tritt in der Zeile “Set objEditor = myIns.WordEditor” auf. Hätte versucht, es mit ChatGPT umzuschreiben, leider ohne Erfolg ;-)

    • Hallo Martin,
      Prüfe bitte, ob im VB Editor (Tools > References) das Kontrollkästchen neben “Microsoft Office 11.0 Object Library” angeklickt ist.

    • Hallo Martin,
      Das Verfahren sollte ähnlich im Fall von Outlook 2003 aussehen. Der Unterschied besteht in der Versionsnummer der bei dem Makro zu verwendenden Bibliotheken. Im Fall von Office 2003 ist dies „11.0“, z. B. Microsoft Outlook 11.0 Object Library.

  2. Hallo Jarek,

    statt Outlook 2016 auf Windows 10 öffnet sich der VBA Editor
    und markiert die erste Zeile
    Public WithEvents OutlookInspectors As Outlook.Inspectors

    mit der Meldung

    Compile Error:
    Invalid attribute in Sub or Funktion

    • Hallo Matthias,
      Hast du geprüft, ob alle notwendigen References im VB Editor (Tools>References) aufgelistet und die Kontrollkästchen daneben angeklickt sind?
      Siehe bitte diesen Abschnitt im obigen Beitrag.
      Grüße,
      Kamil

  3. Hallo Jarek,

    super Erklärung und Anleitung. Leider klappt das bei mir nur bedingt. Nach Aktivierung des Makros kommt es bei Klick auf ein Mail im Posteingang zu “Laufzeitfehler 4605: Diese Methode oder Eigenschaft ist nicht verfügbar, weil das Dokument für die Bearbeitung gesperrt ist.” Bei Debuggen wird diese Zeile markiert: objEditor.Windows(1).Selection.Style = objStyle

    Kann das irgendwie gelöst werden?

    Vielen Dank für die Hilfe.
    Beste Grüße
    Josef

  4. Hallo Jarek,

    das hat für die Mails gut geklappt, obwohl Visual Basic 7.1 in Outlook 365 einen Fehler beim Laden gemeldet hat bei der DLL “Microsoft DAO 3.6 Object Library”.
    Allerdings wird im Kalender bei einem neuen Termin, wenn ich unter “Meine Vorlagen” eine Vorlage benutze, immer noch Calibri 11 ausgegeben. Gibt es hierfür vielleicht eine Lösung?

    Vielen Dank für die Hilfe.

    Beste Grüße

    Fritz

  5. Gut erklärt, funktioniert leider gar nicht. Stilname ist geändert, der Stil entsprechend meinen Wünschen formatiert, und wenn das Makro ausgeführt wurde, ist zwar das Format richtig zugewiesen, aber die Schrift ist wieder Calibri. In der normalEmail.dotm stimmt das Format (Schrift und Größe).
    LG
    K.

  6. Hallo Jarek,

    wenn ich das 1 zu 1 nachmache bekomme ich in Outlook (Office 365) seinen Syntaxfehler, der in dieser Zeile markiert wird

    “Private Sub myIns_Activate()”

    kannst du mir da weiterhelfen ?

    Vielen Dank

    • Hallo Martin,

      hast du den Stilnamen in dem Code geändert wie in den Makro-Kommentaren beschrieben? Genau geht es um dieses Stück:
      Private Sub myIns_Activate()
      ‘Change the name of the style to your own
      ‘The name is case sensitive
      Dim objStyleName As String
      objStyleName = “Custom Style 1”
      Grüße,
      Pawel

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*

Verantwortlicher für Ihre personenbezogenen Daten ist CodeTwo sp. z o.o. sp. k.
Weitere Informationen finden Sie in unserer Datenschutzerklärung.