|
Outlook bietet in Sachen Seriendruck verschiedenste
Möglichkeiten, den Einzel oder Massenversand von Mails, Faxen
oder Briefen auf den Weg zu bringen. Bevor man sich jedoch an
die Arbeit macht, sollte man sich über die
Grundvoraussetzungen** des Seriendrucks in und mit Outlook
informieren:
Voraussetzungen
|
Outlook-Version |
Versand im HTML-Format |
Versand
mit Attachment |
Benötigte Word-Versiobn |
| Outlook 2000 |
 |
 |
Word 2000 |
| Outlook 2002 |
 |
 |
Word 2002 |
| Outlook 2003 |
 |
 |
Word 2003 |
| Outlook 2007 |
 |
 |
Word 2007 |
**Personalisierte Serienmails mit Attachments sind nur mit
Zusatztools oder dem
nachfolgenden Skript des Outlook/VBA-Spezialisten
Peter Marchert
möglich. Gehen Sie dafür folgendermaßen vor:
1.
Erstellen Sie eine neue E-Mail ohne Empfänger, aber mit Betreff
und den zu versendenden Anlagen. 2. Speichern Sie diese als
Vorlage (*.oft) ab. Den Namen der Vorlage und den Pfad
bitte in der Code-Zeile Const Template ändern. 3.
Kopieren Sie diesen Code:
Sub
MailMerge()
'=====================================================================
' Erstellt kategorieabhängig E-Mails von einem bestimmten
Kontakte- ' ordner aus einer Vorlage und verschickt diese auf
Wunsch sofort. ' (c) 2007 Peter Marchert -
http://www.outlook-stuff.com
'=====================================================================
Dim objFolder As Outlook.MAPIFolder ' Kontakteordner Dim
objContact As Outlook.ContactItem ' Einzelner Kontakt Dim
objMail As Outlook.MailItem ' Einzelne E-Mail Dim
objAttachment As Outlook.Attachment ' E-Mail-Anhang
Dim
lngItem As Long ' Schleifenzähler Dim lngMails As Long '
Erstellte E-Mails Dim blnSend As Boolean ' E-Mails sofort
senden
Const CATEGORY As String = "Geschäftlich" '
E-Mails nur an diese Kategoie ' Leerlassen, wenn an alle
senden Const TEMPLATE As String = "C:\Mail.oft" '
E-Mailvorlage (mit Anhang)
'---------------------------------------------------------------------
' Kontakteordner referenzieren ( z. B. Geschäftskontakte aus dem
' Business Contact Manager oder den Standardkontakteordner)
'---------------------------------------------------------------------
'Set objFolder = Outlook.Session.Folders("Business Contact
Manager").Folders("Geschäftskontakte") Set objFolder =
Outlook.Session.GetDefaultFolder(olFolderContacts)
'---------------------------------------------------------------------
' Mails gleich verschicken?
'---------------------------------------------------------------------
If MsgBox("Sollen die E-Mails sofort gesendet werden?",
vbQuestion + _ vbYesNo + vbDefaultButton2, "Send Mail") =
vbYes Then blnSend = True
'---------------------------------------------------------------------
' Kontakt-Ordner abarbeiten
'---------------------------------------------------------------------
For lngItem = 1 To objFolder.Items.Count
'-----------------------------------------------------------------
' Kontakt referenzieren
'-----------------------------------------------------------------
Set objContact = objFolder.Items(lngItem)
'-----------------------------------------------------------------
' Enthält er die gesuchte Kategorie oder ist die
Kategoriekonstante ' leer, wird eine E-Mail erstellt.
'-----------------------------------------------------------------
If InStr(objContact.Categories, CATEGORY) Or CATEGORY = "" Then
'-------------------------------------------------------------
' Neue E-Mail aus Vorlage erstellen
'-------------------------------------------------------------
Set objMail = Outlook.CreateItemFromTemplate(TEMPLATE)
With objMail
'--------------------------------------------------------- '
Hinweis, wenn E-Mailadresse fehlt'
'--------------------------------------------------------- If
InStr(objContact.Email1Address, "@") = 0 Then If MsgBox("Der
Kontakt """ & objContact.FullName & _ """ hat keine
E-Mailadresse.", vbExclamation + _ vbOKCancel, "Send Mail") =
vbCancel Then Exit Sub GoTo Skippy End If
'--------------------------------------------------------- '
E-Mailadresse setzen
'--------------------------------------------------------- If
Left(Trim(objContact.Email1DisplayName), 1) = "(" Then .To =
objContact.Email1Address Else .To =
objContact.Email1DisplayName End If
'--------------------------------------------------------- '
Anrede ermitteln
'--------------------------------------------------------- If
objContact.Title = "Herr" Then
If objContact.LastName <>
"" Then .Body = "Sehr geehrter Herr " & objContact.LastName _
& "," & vbCrLf & vbCrLf & .Body Else .Body = "Sehr geehrte
Damen und Herren," & vbCrLf _ & vbCrLf & .Body End If
ElseIf objContact.Title = "Frau" Then
If
objContact.LastName <> "" Then .Body = "Sehr geehrte Frau " &
objContact.LastName _ & "," & vbCrLf & vbCrLf & .Body Else
.Body = "Sehr geehrte Damen und Herren," & vbCrLf _ & vbCrLf
& .Body End If
Else .Body = "Sehr geehrte Damen und
Herren," & vbCrLf & _ vbCrLf & .Body End If
'--------------------------------------------------------- '
Neue E-Mail speichern (Ordner "Entwürfe")
'---------------------------------------------------------
.Save
'--------------------------------------------------------- '
Wenn versenden, dann versenden
'--------------------------------------------------------- If
blnSend Then .Send
'--------------------------------------------------------- '
Zähler für Meldung erhöhen
'---------------------------------------------------------
lngMails = lngMails + 1
End With
End If
Skippy:
Set objMail = Nothing
Next
'---------------------------------------------------------------------
' Meldung an Benutzer
'---------------------------------------------------------------------
If blnSend Then MsgBox "E-Mails versendet: " & lngMails &
Chr(9), vbInformation _ + vbOKOnly, "Send Mail" Else
MsgBox "E-Mails erstellt: " & lngMails & Chr(9), vbInformation +
_ vbOKOnly, "Send Mail" End If
End Sub
4. Binden Sie das Makro in Outlook ein: Starten Sie mit
(Alt) +(F11) den Visual Basic-Editor. Doppelklicken Sie im
Projekt-Explorer auf den Eintrag DieseOutlookSitzung,
wobei Sie gegebenenfalls zuvor die übergeordneten Zweige
einblenden müssen. Geben Sie im Codefenster die o.g.
Programmzeilen ein. Beenden Sie den Visual Basic-Editor und
speichern das VBA-Projekt. Starten Sie das Makro über Extras
Makro
Makros
Umgehung der Sicherheitsabfrage
Das integrierte Sicherheitspatch in Outlook sorgt unter
Umständen dafür, dass Sie nach jedem Kontakt, den Sie via
Seriendruck aus Word verschicken,
eine
Sicherheitsabfrage bekommen. Ein Tool zur Unterdrückung
dieser Abfrage
gibt es
hier. Natürlich ist es auch möglich, die lästige
Sicherheitsabfrage ohne Zusatz-Tools
programmatisch zu unterdrücken. Und hier trennt sich auch
die digitale Spreu vom Weizen: Gut gemachte Software, die auf
Outlook zugreift, hat dies bereits programmatisch gelöst,
schlecht gemachte Software lässt Sie in Punkto
Sicherheitsabfrage im Regen stehen.
Serienmail
mit Outlook 2007

Startpunkt: Outlook
Auswahl der Kontakte

Die Empfänger der Serienmails/Briefe sind in den meisten Fällen
nicht statisch oder richten sich nach der in Outlook
eingestellten Sortierreihenfolge. Um die Kontaktauswahl nach
Ihren Bedürfnissen individualisieren zu können, sind die
benutzerdefinierten Ansichten in Outlook das ideale Werkzeug:
Ansicht
Anordnen nach (nur in Outlook 2003)
Aktuelle Ansicht
Aktuelle Ansicht anpassen. Hier wählen Sie die Rubrik
Felder. In dieser Feldübersicht haben Sie die Möglichkeit,
Kontaktfelder Ihrer Ansicht hinzuzufügen oder zu entfernen.
Wollen Sie Ihren Serienbrief z.B. an alle Besitzer eines
Mobiltelefons schicken, ergänzen Sie die rechte Liste einfach
über den Button Hinzufügen um den Wert Mobiltelefon.
Die anschließend generierte Ansicht Ihrer Kontaktliste zeigt
anschließend ausschließlich Kontakte, in die Sie eine
Handynummer eingetragen haben. Um den von Ihnen erstellten
Filter für Sie übersichtlicher zu machen, wählen Sie
idealerweise die Ansicht
Telefonliste (Ansicht
Anordnen nach (nur in Outlook 2003)
Aktuelle Ansicht)
Seriendruck starten

Starten Sie den Seriendruck über den Menüpunkt Extras
Seriendruck. In der nachfolgenden
Maske haben Sie weitere Auswahlmöglichkeiten:
Rubrik
Kontakte Da Sie mit Filtern arbeiten, wäre alle Kontakte
in aktueller Ansicht die richtige Wahl. Ohne Filtereinsatz
können Sie natürlich die gewünschte Kontakte auch explizit
auswählen. Rubrik Kontaktfelder Hier können Sie
entscheiden, ob Sie alle Kontaktfelder, die in Ihrem Kontakt mit
Inhalt gefüllt sind, verwendet werden, oder nur die gefilterten
Felder. Rubrik Dokument Hier wählen Sie entweder
eine vorhandene Word-Datei (keine Word-Vorlagen *.dot)
oder erstellen eine Neue. Rubrik Kontaktdaten
Möchten Sie Ihre mühsam erstellte Ansicht/Filterung der
Kontaktdaten für eine wiederholte Verwendung speichern, können
Sie das an dieser Stelle tun. Rubrik Optionen a)
Dokumenttyp Hier können Sie die Art des Seriendrucks
bestimmen (Brief, Adressetiketten, Umschläge oder Katalog) b)
Zusammenführung an Hier legen Sie fest, in welche
Form der Seriendruck am Ende überführt wird (Neues Dokument,
E-Mail oder Direktausgabe an einen Drucker.
Seriendruck in Word abschließen
In Word selbst erstellen Sie Ihr Seriendruckdokument:

a) Wählen Sie in der Symbolleiste Seriendruck
Seriendruckfelder einfügen. b)
Fügen Sie die Seriendruckfelder in Ihr Dokument ein und
platzieren Sie sie nach Ihren Wünschen. c) Überprüfen Sie
über die Seriendruck-Vorschau, ob die Felder korrekt mit Inhalt
gefüllt werden. d) Starten Sie die Ausgabe- wahlweise per
Schaltfläche über den Drucker, E-Mail, Dokument oder Fax.

Verwenden von PR-Feldern
Es ist ohne weiteres möglich, direkt aus Word manuell einen
Adressblock über sog. PR-Felder zu erstellen und dabei einen
Outlook Kontakt als Datenquelle zu nutzen, ohne den
Seriendruckassistenten nutzen zu müssen. Über etwas
Word-Erfahrung sollten Sie dabei jedoch verfügen.
1.
Erstellen Sie folgenden Text
<PR_DISPLAY_NAME_PREFIX> <PR_GIVEN_NAME> <PR_SURNAME>
<PR_STREET_ADDRESS> <PR_POSTAL_CODE> <PR_LOCALITY>
<PR_COUNTRY>
2. Markieren den Text
Einfügen
Autotext
Neu. Geben Sie dem Autotext die
Bezeichnung AdressLayout 3. Fügen Sie das
Outlook-Adressbuch der Word Symbolleiste hinzu. Das Adressbuch
finden Sie unter: Ansicht
Symbolleisten
Anpassen Registerkarte Befehle
Kategorie
Einfügen
ziehen Sie das Adressbuch via Drag&Drop
in die Symbolleiste 4. Markieren Sie den Autotext. 5.
Öffnen das Adressbuch und klicken den gewünschten Kontakt
doppelt an. 6. Das Ergebnis sollte dann folgenderweise
aussehen (Die Vorraussetzung ist das alle Kontaktfelder sind
ausgefüllt)
Herr Vorname Nachname
Strasse PLZ Ort
|