Wie Sie ein Recordset Outlook e-Mail an mehrere Empfänger in Microsoft Access

Erweiterte: Erfordert professionelle Codierung, Interoperabilität und Mehrbenutzer wissen.

Zusammenfassung

Dieser Artikel beschreibt die Automatisierung verwenden, um Microsoft Outlook E-mail-Nachricht an mehrere Empfänger senden, deren Adressen in einer Microsoft Access-Tabelle aufgeführt sind. In diesem Artikel verwendet auch Access Formularsteuerelemente hinzufügen Nachrichtentext im Feld Cc eingeben und im Feld Betreff eingeben. Dieser Artikel beschreibt darüber hinaus eine programmgesteuerte Methode, mit denen Sie e-Mail-Anlagen und e-Mail-Adressen im Outlook-Adressbuch.

Weitere Informationen

Erstellen eine Outlook-Sitzung Zugriff und ein Recordset e-Mail-Nachrichten an mehrere Empfänger senden folgendermaßen Sie vor:

  1. Erstellen Sie eine Textdatei, die Sie als Anlage verwenden können. Speichern der Datei als "TestAttachment.txt" im Stammverzeichnis von Laufwerk C. Beispielsweise können Sie die Datei als C:\TestAttachment.txt speichern.
  2. Erstellen Sie eine neue Datenbank mit dem Namen "db1.mdb".
  3. Erstellen Sie eine neue Tabelle mit den folgenden Informationen Db1.mdb:
    Table: tblMailingList
    ----------------------
    Field Name: EmailAddress
    Data Type: text

  4. Geben Sie im Feld EmailAddressmehrere gültige e-Mail-Adressen.
  5. Erstellen Sie ein Formular mit den folgenden Informationen:
    Form: frmMail
    ----------------------
    RecordSource: tblMailingList

    Text box
    ---------------------------
    Name: CCAddress
    ControlSource: Unbound
    Label Caption: CC Address

    Text box
    ---------------------------
    Name: Subject
    ControlSource: Unbound
    Label Caption: Subject

    Text box
    ---------------------------
    Name: MainText
    ControlSource: Unbound
    Label Caption: Message Body

  6. Öffnen Sie das Formular in der Formularansicht, und geben Sie Daten in die entsprechenden Felder. Drücken Sie nach jedem Eintrag und dann lassen Sie das Formular öffnen Sie.
  7. Erstellen Sie ein neues Modul. Das neue Modul das folgende Codebeispiel hinzugefügt.
    Option Compare DatabaseOption Explicit

    Sub SendMessages(Optional AttachmentPath)

    Dim MyDB As Database
    Dim MyRS As Recordset
    Dim objOutlook As Outlook.Application
    Dim objOutlookMsg As Outlook.MailItem
    Dim objOutlookRecip As Outlook.Recipient
    Dim objOutlookAttach As Outlook.Attachment
    Dim TheAddress As String

    Set MyDB = CurrentDb
    Set MyRS = MyDB.OpenRecordset("tblMailingList")
    MyRS.MoveFirst

    ' Create the Outlook session.
    Set objOutlook = CreateObject("Outlook.Application")

    Do Until MyRS.EOF
    ' Create the e-mail message.
    Set objOutlookMsg = objOutlook.CreateItem(olMailItem)
    TheAddress = MyRS![EmailAddress]

    With objOutlookMsg
    ' Add the To recipients to the e-mail message.
    Set objOutlookRecip = .Recipients.Add(TheAddress)
    objOutlookRecip.Type = olTo

    ' Add the Cc recipients to the e-mail message.
    If (IsNull(Forms!frmMail!CCAddress)) Then
    Else
    Set objOutlookRecip = .Recipients.Add(Forms!frmMail!CCAddress)
    objOutlookRecip.Type = olCC
    End If

    ' Set the Subject, the Body, and the Importance of the e-mail message.
    .Subject = Forms!frmMail!Subject
    .Body = Forms!frmMail!MainText
    .Importance = olImportanceHigh 'High importance

    'Add the attachment to the e-mail message.
    If Not IsMissing(AttachmentPath) Then
    Set objOutlookAttach = .Attachments.Add(AttachmentPath)
    End If

    ' Resolve the name of each Recipient.
    For Each objOutlookRecip In .Recipients
    objOutlookRecip.Resolve
    If Not objOutlookRecip.Resolve Then
    objOutlookMsg.Display
    End If
    Next
    .Send
    End With
    MyRS.MoveNext
    Loop
    Set objOutlookMsg = Nothing
    Set objOutlook = Nothing
    End Sub

  8. Klicken Sie im Visual Basic-Editor im Menü Extras auf Verweise .
  9. Klicken Sie in der Liste Verfügbare Verweise auf Microsoft Outlook 8.0 Object Library, und klicken Sie auf OK.

    Hinweis Sie müssen die richtigen Microsoft Outlook-Objektbibliothek auswählen. Die Microsoft Outlook-Objektbibliothek, die Sie auswählen hängt von der Version von Outlook auf Ihrem Computer installiert ist. Wenn Sie Office Outlook 2003 auf Ihrem Computer installiert haben, klicken Sie beispielsweise auf Microsoft Outlook 11.0 Object Library.
  10. Drücken Sie STRG + G, um das Debug-Fenster zu öffnen.
  11. Um die e-Mail-Nachricht mit einer Anlage senden, geben Sie folgenden Befehl in das Debugfenster:
    SendMessages "C:\TestAttachment.txt"
    Drücken Sie die EINGABETASTE.

    Lassen Sie alternativ zum Senden der e-Mail-Nachricht ohne Anlagen das Argument beim Aufruf der Prozedur Weg. Geben Sie folgenden Befehl in das Debugfenster:
    SendMessages
    Drücken Sie die EINGABETASTE.

Referenzen

Weitere Informationen zur Verwendung von Automatisierung zur Steuerung von Outlook finden Sie in den folgenden zu Artikeln der Microsoft Knowledge Base:

161088 mithilfe von Automatisierung eine Microsoft Outlook-Nachricht

160502 mithilfe von Automatisierung zum Hinzufügen von Terminen in Microsoft Outlook

161012 zum Erstellen eines neuen Kontakts in Outlook mit der Automatisierung

Eigenschaften

Artikelnummer: 318881 – Letzte Überarbeitung: 16.01.2017 – Revision: 1

Feedback