EmailMergeEnvelope-Objekt (Publisher)

Stellt den E-Mail-Container (Umschlag) dar, der das Microsoft Publisher-Dokument enthält, das mit einem Seriendruck zusammengeführt wird.

Hinweise

Die Eigenschaften des Objekts "EmailMergeEnvelope" entsprechen der Kombination aus erforderlichen und optionalen Einstellungen im Dialogfeld "Seriendruck an E-Mail" in der Publisher-Benutzeroberfläche (zeigen Sie im Menü "Datei" auf "E-Mail senden", wählen Sie "E-Mail senden" und dann "Optionen" aus).

Bevor Sie die Execute-Methode des MailMerge-Objekts zum Senden einer Seriendruck-E-Mail verwenden können, müssen Sie einen Wert für die An-Eigenschaft des EmailMergeEnvelope-Objekts angeben. Andernfalls gibt Publisher einen Fehler zurück.

Beispiel

Das folgende Microsoft Visual Basic for Applications (VBA)-Makro zeigt, wie Sie einige der Eigenschaften eines EmailMergeEnvelope-Objekts zuweisen, das einen Serien-E-Mail darstellt, und dann die resultierende E-Mail-Nachricht, eine Einladung, senden. Das Makro stellt eine Verbindung zu einer Datenquelle her, weist den Eigenschaften "An" und "Betreff" des Objekts "EmailMergeEnvelope" Werte zu und fügt der E-Mail-Nachricht ein Textfeld mit Seriendruckfeldern und zusätzlichem Text hinzu. Anschließend wird die Execute-Methode des MailMerge-Objekts verwendet, um den Seriendruck auszuführen und die E-Mail zu senden.

Die Datenquelle, auf die in diesem Beispiel verwiesen wird, ist eine einfache Textdatei mit Tabstopptrennzeichen und drei Spalten mit den Überschriften "Erste", "Nachname" und "E-Mail-Adresse".

Erstellen Sie vor dem Ausführen des Codes die Textdatei, fügen Sie eine oder mehrere Zeilen mit Datenzeilen hinzu, benennen Sie die Datei "DataSource.txt", und speichern Sie sie auf dem Datenträger. Fügen Sie den Pfad der Datei zum Code hinzu, indem Sie die PathToFile-Variable durch Ihren Pfad ersetzen.

Wenn Sie den Code in diesem Beispiel mehrmals ausführen, treten Fehler auf, da Publisher bei jeder Ausführung des Codes eine Verbindung mit der Datenquelle herstellt, was zu einer Publikation führt, die mit mehreren Datenquellen verbunden ist. Wenn mehrere Datenquellenverbindungen vorhanden sind, fügt Publisher eine zusätzliche Spalte in die (kombinierte) Master-Seriendruck-Datenquelle ein, um die spezifische Datenquelle für jeden Datensatz anzugeben. Infolgedessen ändert Publisher effektiv die Indexnummer aller Datenquellenspalten, wodurch die in diesem Code verwendeten Indizes (z. B. MailMergeField1) falsch werden.

Public Sub EmailMergeEnvelope_Example() 
 
 Dim pubShape As Publisher.Shape 
 Dim pubMailMerge As Publisher.MailMerge 
 
 'Connect to the data source. 
 Set pubMailMerge = ThisDocument.MailMerge 
 pubMailMerge.OpenDataSource "PathToFile \DataSource.txt" 
 
 'Assign "Email Address" to the To field of the email message. 
 pubMailMerge.EmailMergeEnvelope.To = pubMailMerge.DataSource.DataFields.Item(3) 
 
 'Add text to the Subject field of the email message. 
 pubMailMerge.EmailMergeEnvelope.Subject = "Invitation" 
 
 'Insert two merge fields and some additional text in a text box in the body of the message. 
 Set pubShape = ThisDocument.Pages(1).Shapes.AddTextbox(pbTextOrientationHorizontal, 100, 100, 200, 100) 
 pubShape.TextFrame.TextRange.Text = "Dear " 
 pubShape.TextFrame.TextRange.InsertMailMergeField 1 
 pubShape.TextFrame.TextRange.InsertAfter " " 
 pubShape.TextFrame.TextRange.InsertMailMergeField 2 
 pubShape.TextFrame.TextRange.InsertAfter ": " 
 pubShape.TextFrame.TextRange.InsertAfter "You are invited!" 
 
 'Perform the merge. 
 pubMailMerge.Execute True, pbSendEmail 
 
 'Display a reminder 
 MsgBox "If your email client is not already open, remember to open it and send the email messages that are in the outbox." 
 
End Sub

Eigenschaften

Siehe auch

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.