Zur Hauptseite ... Zum Onlinearchiv ... Zum Abonnement ... Zum Newsletter ... Zu den Tools ... Zum Impressum ... Zum Login ...

Achtung: Dies ist nicht der vollständige Artikel, sondern nur ein paar Seiten davon. Wenn Sie hier nicht erfahren, was Sie wissen möchten, finden Sie am Ende Informationen darüber, wie Sie den ganzen Artikel lesen können.

Kompletten Artikel lesen?

Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

E-Mail:

Gedrucktes Heft

Diesen Beitrag finden Sie in Ausgabe 5/2014.

Unser Angebot für Sie!

Lesen Sie diesen Beitrag und 500 andere sofort im Onlinearchiv, und erhalten Sie alle zwei Monate brandheißes Access-Know-how auf 72 gedruckten Seiten! Plus attraktive Präsente, zum Beispiel das bald erscheinende Buch 'Access 2010 - Das Grundlagenbuch für Entwickler'!

Diesen Beitrag twittern

Outlook-E-Mails mit Richtext füttern

Die noch nicht allzu alten Richtext-Features von Access (ab Version 2007) bieten eine tolle Möglichkeit, Texte zu formatieren und diese auch in dieser Form etwa in Berichten auszugeben. Noch interessanter wird es, wenn man E-Mails ebenfalls mit Formatierungen ausstattet und beides zusammenführen möchte – sprich: Die Texte von E-Mails mit den Richtext-Möglichkeiten von Access formatieren und dann als Inhalt einer neuen E-Mail unter Outlook einfügen. Dieser Beitrag liefert die Grundlagen zu diesem Thema.

In einem einfachen Beispiel wollen wir zunächst die drei Informationen Empfänger, Betreff und Inhalt für eine E-Mail in einem Formular erfassen.

Das Formular heißt frmRichtextInMailExportieren und sieht wie in Bild 1 aus.

Formular zur Eingabe der E-Mail-Inhalte

Bild 1: Formular zur Eingabe der E-Mail-Inhalte

Es enthält die drei Textfelder txtAn, txtBetreff und txtInhalt. Der Einfachheit halber haben wir es nicht an eine Tabelle gebunden, sondern füllen es bei Bedarf per Schaltfläche mit ein paar Beispieldaten.

Diese Schaltfläche heißt cmdBeispieltext und ruft die Prozedur aus Listing 1 auf. Die Tabelle tblRichtext, aus der die Prozedur per DLookup-Funktion den Richtext bezieht, stammt aus einem Beispiel zu einem vorherigen Beitrag zu diesem Thema namens Richtext ab Access 2007 (www.access-im-unternehmen.de/927).

Private Sub cmdBeispieltext_Click()
     Me!txtAn = "test@mustermann.de"
     Me!txtBetreff = "Dies ist eine Textmail mit Richtext-Inhalt."
     Me!txtInhalt = DLookup("Richtext", "tblRichtext", "RichtextID = 3")
End Sub

Listing 1: Füllen der Textfelder des Formulars frmRichtextInMailExportieren mit Beispieldaten

Outlook-Verweis erstellen

Da abzusehen ist, dass wir gleich per VBA auf Outlook zugreifen und dort per Code eine Mail erstellen und füllen werden, bereiten wir schon einmal den für den einfachen Zugriff nötigen Verweis auf die Bibliothek Microsoft Outlook x.0 Object Library vor (für x bitte die Version Ihrer Outlook-Bibliothek einsetzen). Den Verweis fügen Sie im VBA-Editor über den Verweise-Dialog hinzu, den Sie mit dem Menübefehl Extras|Verweise aufrufen – s. Bild 2.

Verweis auf die Outlook-Objektbibliothek

Bild 2: Verweis auf die Outlook-Objektbibliothek

Mail manuell füllen

Zuvor schauen wir uns allerdings noch an, was geschieht, wenn wir den Inhalt des Textfeldes txtInhalt manuell kopieren und in eine neu erstellte E-Mail einfügen. Wir arbeiten in diesem Fall übrigens mit Access 2010 und Outlook 2010. Das Resultat enttäuscht: Es wurden überhaupt keine Formatierungen übernommen! Wenn die eingefügte E-Mail bei Ihnen wie bei uns in Bild 3 aussieht, dann haben Sie den gleichen Fehler gemacht wie wir: Das E-Mail-Format ist noch auf Nur-Text eingestellt. Aber das ist kein Problem: Wir ändern den entsprechenden Eintrag in den Optionen von Outlook einfach mit der Einstellung aus Bild 4. Die Frage ist nur: Welche der beiden Einstellungen HTML oder Rich-Text ist für unseren Fall die richtige? Uns bleibt nichts anderes übrig, als beide Versionen auszuprobieren. Beginnen wir mit der Einstellung HTML. Nach dem Anlegen einer neuen E-Mail unter dieser Einstellung sieht es schon besser aus. Immerhin werden die meisten Formatierungen übernommen (s. Bild 5).

Erster Versuch: Einfügen per Copy & Paste – gescheitert, da die Mail im Textformat erstellt wurde

Bild 3: Erster Versuch: Einfügen per Copy & Paste – gescheitert, da die Mail im Textformat erstellt wurde

Einstellung des E-Mail-Formats in den Optionen von Outlook 2010

Bild 4: Einstellung des E-Mail-Formats in den Optionen von Outlook 2010

E-Mail mit der Einstellung HTML

Bild 5: E-Mail mit der Einstellung HTML

Einziger Wermutstropfen: Outlook übernimmt nicht die im Access-Formular verwendete Schriftart Calibri, sondern zeigt den Inhalt mit Times New Roman an. Das ist aber auch kein Wunder, denn wenn wir uns den HTML-Code für den Richtext mit einer weiteren Schaltfläche des Formulars in einem Meldungsfenster ausgeben lassen, stellen wir fest, dass dort auch nirgends eine Schriftart für die Ausgabe festgelegt wurde. Access verwendet im Textfeld schlicht die Schriftart, die als Eigenschaft für dieses Steuerelement festgelegt wurde (s. Bild 6).

HTML-Text des Textfeld-Inhalts

Bild 6: HTML-Text des Textfeld-Inhalts

Interessanterweise ist in der jungfräulichen E-Mail auch die Schriftart Calibri voreingestellt. Aus irgendeinem Grund wird der Text dort aber nach dem Einfügen mit der Schriftart Times New Roman versehen.

Bevor wir Ursachenforschung betreiben, schauen wir uns erst noch an, was das Format Rich-Text für E-Mails in unserem Fall bietet. Doch das Ergebnis bleibt das gleiche: Die Formatierungen bleiben weitgehend erhalten, doch als Schriftart wird nicht, wie erwünscht und erwartet, Calibri verwendet.

Sie haben das Ende des frei verfügbaren Teils des Artikels erreicht. Lesen Sie weiter, um zu erfahren, wie Sie den vollständigen Artikel lesen und auf viele hundert weitere Artikel zugreifen können.

Sind Sie Abonnent?Jetzt einloggen ...
 

Kompletten Artikel lesen?

Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

E-Mail:

© 2003-2015 André Minhorst Alle Rechte vorbehalten.