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

VBA E-Mail - Outlook ungewünschter Zeilenabstand

Forumthread: VBA E-Mail - Outlook ungewünschter Zeilenabstand

VBA E-Mail - Outlook ungewünschter Zeilenabstand
30.08.2019 08:03:17
Alex586GH
Hallo liebe Mitglieder,
ich habe folgendes Anliegen:
Ich habe in Excel einen VBA Code generiert welche mir bei einem Klick auf einen Button automatisch eine E-Mail in Outlook generiert und veranschaulicht. Dabei wird der zu versendende Text (.Body) aus einer bestimmten Zelle verwendet. Der Text in der Zelle ist fertig formatiert (also Zeilenstände sind festgelegt). Nun habe ich aber das Problem, dass mir Outlook bei einer Zeile automatisch einen größeren Abstand zur nächsten macht, obwohl der Text in Excel keinen Abstand hat. Bei Tests, habe ich nun herausgefunden, dass es an der Länge des Textes liegt (obwohl der nicht sehr lang ist). Hatte hier jemand schonmal das selbe Problem und hat einen Rat wie man es vermeidet, dass Outlook hier automatisch einen Zeilenabstand macht?
Viele Grüße
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA E-Mail - Outlook ungewünschter Zeilenabstand
30.08.2019 09:38:20
ChrisL
Hi Alex
Entweder hast du durch Copy/Paste (z.B. von Word) versteckte ausgeblendete Charakter/Zeichen im Zelleninhalt. Also löschen und von Hand neu schreiben.
Oder du hast in den Outlook-Einstellung z.B. Absatz auf 2 Zeilen erhöht.
Ansonsten Frage wieder als offen markieren und Beispieldatei mit Code und Mustertext posten.
cu
Chris
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

VBA E-Mail: Zeilenabstand in Outlook anpassen


Schritt-für-Schritt-Anleitung

  1. VBA-Code erstellen: Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen. Füge folgenden Code in ein neues Modul ein:

    Sub SendMail()
        Dim OutApp As Object
        Dim OutMail As Object
        Dim MailBody As String
    
        ' Setze den Mail-Body aus einer bestimmten Zelle
        MailBody = ThisWorkbook.Sheets("Sheet1").Range("A1").Value
    
        Set OutApp = CreateObject("Outlook.Application")
        Set OutMail = OutApp.CreateItem(0)
    
        With OutMail
            .To = "empfaenger@example.com"
            .Subject = "Betreff"
            .Body = MailBody
            .Display ' oder .Send für das direkte Senden
        End With
    
        Set OutMail = Nothing
        Set OutApp = Nothing
    End Sub
  2. Textformatierung prüfen: Stelle sicher, dass der Text in der Excel-Zelle korrekt formatiert ist. Überprüfe, ob es versteckte Zeichen gibt, die den Zeilenabstand beeinflussen könnten.

  3. Outlook-Einstellungen anpassen: Gehe zu den Outlook-Einstellungen und kontrolliere die Absatz-Einstellungen. Stelle sicher, dass der Zeilenabstand auf "Einfach" oder "1,0" eingestellt ist.


Häufige Fehler und Lösungen

  • Problem: Zeilenabstand ist zu groß.
    Lösung: Überprüfe die Absatz-Einstellungen in Outlook. Oft ist der Abstand auf 1,5 oder 2 Zeilen eingestellt. Ändere dies auf "Einfach".

  • Problem: Versteckte Zeichen im Text.
    Lösung: Wenn der Text aus Word kopiert wurde, können unsichtbare Zeichen vorhanden sein. Tippe den Text manuell in die Excel-Zelle, um dies zu vermeiden.


Alternative Methoden

  • HTML-Formatierung: Du kannst den Mail-Body auch im HTML-Format gestalten. Dies ermöglicht dir, den Zeilenabstand detaillierter anzupassen. Beispiel:

    .BodyFormat = 2 ' 2 bedeutet HTML
    .HTMLBody = "<p style='line-height:1;'>Dein Text hier</p>"
  • Onenote als Zwischenablage: Wenn du den Text in OneNote bearbeitest, kannst du den Zeilenabstand dort anpassen und dann in Excel einfügen.


Praktische Beispiele

  1. E-Mail mit einfachem Zeilenabstand:

    .Body = "Dies ist die erste Zeile." & vbCrLf & "Dies ist die zweite Zeile."
  2. E-Mail mit HTML-Zeilenabstand:

    .HTMLBody = "<p style='line-height:1.5;'>Dies ist die erste Zeile.</p><p>Dies ist die zweite Zeile.</p>"

Diese Beispiele zeigen, wie du den Zeilenabstand in einer E-Mail über VBA anpassen kannst, um ein besseres Design der Mail zu erreichen.


Tipps für Profis

  • VBA-Fehlerbehandlung: Implementiere Fehlerbehandlungen in deinem VBA-Code, um mögliche Probleme beim Senden von E-Mails zu identifizieren und zu lösen.

  • E-Mail-Signatur: Achte darauf, dass der Zeilenabstand in deiner Outlook-Signatur ebenfalls korrekt eingestellt ist, um einen einheitlichen Auftritt zu gewährleisten.

  • Textformatierung: Experimentiere mit verschiedenen HTML-Formatierungen, um das Design deiner E-Mail weiter zu verbessern.


FAQ: Häufige Fragen

1. Wie kann ich den Zeilenabstand in einer Excel-Tabelle ändern?
Du kannst den Zeilenabstand in Excel einstellen, indem du die Zelle auswählst und die Zeilenhöhe anpasst. Klicke mit der rechten Maustaste auf die Zeile und wähle "Zeilenhöhe".

2. Warum ist der Zeilenabstand bei E-Mails so unterschiedlich?
Der Zeilenabstand kann durch verschiedene Faktoren beeinflusst werden, einschließlich der Einstellungen in Outlook sowie der Art und Weise, wie der Text kopiert oder formatiert wurde. Achte darauf, die Absatz- und Zeilenabstandseinstellungen in Outlook zu überprüfen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige