Verwenden von Automation zum Senden einer Microsoft Outlook-Nachricht mit Access 2000
Dieser Artikel bezieht sich auf eine Microsoft Access-Datenbank (.mdb) und ein Microsoft Access-Projekt (ADP).
Zusammenfassung
In diesem Artikel erfahren Sie, wie Sie mithilfe von Automation eine Microsoft Outlook-Nachricht in Microsoft Access 2000 erstellen und senden.
Die Verwendung der hier aufgeführten Informationen, Makro- oder Programmcodes geschieht auf Ihre eigene Verantwortung. Microsoft stellt Ihnen diese Informationen sowie Makro- und Programmlistings ohne Gewähr auf Richtigkeit, Vollständigkeit und/oder Funktionsfähigkeit sowie ohne Anspruch auf Support zur Verfügung. Die zur Verfügung gestellten Makro- und Programmierungsbeispiele sollen lediglich exemplarisch die Funktionsweise des Beispiels aufzeigen. Die Microsoft Support-Spezialisten können bei der Erläuterung der Funktionalität bestimmter Prozeduren helfen, jedoch werden sie diese Beispiele nicht in Bezug auf eine erweiterte Funktionalität verändern, noch werden sie Prozeduren entwickeln, die auf Ihre besonderen Bedürfnisse zugeschnitten sind.
Hinweis
Der folgende Code funktioniert möglicherweise nicht ordnungsgemäß, wenn Sie das Outlook E-Mail-Sicherheitsupdate installiert haben.
Sie können die SendObject
-Methode verwenden, um eine MAPI-E-Mail-Nachricht programmgesteuert in Microsoft Access zu senden. Die SendObject
-Methode bietet Ihnen jedoch keinen Zugriff auf vollständige E-Mail-Funktionen, z. B. die Möglichkeit, eine externe Datei anzufügen oder die Nachrichtenrelevanz festzulegen. Im folgenden Beispiel wird Automation verwendet, um eine E-Mail-Nachricht zu erstellen und zu senden, die Sie verwenden können, um viele Features in Microsoft Outlook zu nutzen, die mit der SendObject
-Methode nicht verfügbar sind.
Es gibt sechs Standard Schritte zum Senden einer Microsoft Outlook-E-Mail-Nachricht mithilfe von Automation, wie folgt:
- Initialisieren Sie die Outlook-Sitzung.
- Erstellen Sie eine neue Nachricht.
- Fügen Sie die Empfänger (An, CC und BCC) hinzu, und lösen Sie deren Namen auf.
- Legen Sie gültige Eigenschaften fest, z. B. Betreff, Text und Wichtigkeit.
- Fügen Sie Anlagen hinzu (falls vorhanden).
- Anzeigen/Senden der Nachricht.
Programmgesteuertes Senden einer Microsoft Outlook-E-Mail-Nachricht
Erstellen Sie eine Beispieltextdatei mit dem Namen Customers.txt im Ordner C:\Eigene Dokumente.
Starten Sie Microsoft Access, und öffnen Sie die Beispieldatenbank Northwind.mdb.
Erstellen Sie ein Modul, und geben Sie die folgende Zeile im Abschnitt Deklarationen ein, falls es noch nicht vorhanden ist:
Option Explicit
Wählen Sie im Menü Extrasdie Option Verweise aus.
Wählen Sie im Feld Verweise die Microsoft Outlook 9.0-Objektbibliothek und dann OK aus.
Hinweis
Wenn die Microsoft Outlook 9.0-Objektbibliothek nicht im Feld Verfügbare Verweise angezeigt wird, durchsuchen Sie ihre Festplatte nach der Datei Msoutl9.olb. Wenn Sie diese Datei nicht finden können, müssen Sie das Microsoft Outlook-Setupprogramm ausführen, um sie zu installieren, bevor Sie mit diesem Beispiel fortfahren.
Geben Sie das folgende Verfahren in das neue Modul ein:
Sub SendMessage(Optional AttachmentPath) Dim objOutlook As Outlook.Application Dim objOutlookMsg As Outlook.MailItem Dim objOutlookRecip As Outlook.Recipient Dim objOutlookAttach As Outlook.Attachment ' Create the Outlook session. Set objOutlook = CreateObject("Outlook.Application")' Create the message. Set objOutlookMsg = objOutlook.CreateItem(olMailItem) With objOutlookMsg ' Add the To recipient(s) to the message. Set objOutlookRecip = .Recipients.Add("Nancy Davolio") objOutlookRecip.Type = olTo ' Add the CC recipient(s) to the message. Set objOutlookRecip = .Recipients.Add("Andrew Fuller") objOutlookRecip.Type = olCC ' Set the Subject, Body, and Importance of the message. .Subject = "This is an Automation test with Microsoft Outlook" .Body = "Last test - I promise." & vbCrLf & vbCrLf .Importance = olImportanceHigh 'High importance ' Add attachments to the message. If Not IsMissing(AttachmentPath) Then Set objOutlookAttach = .Attachments.Add(AttachmentPath) End If ' Resolve each Recipient's name. For Each objOutlookRecip In .Recipients objOutlookRecip.Resolve If Not objOutlookRecip.Resolve Then objOutlookMsg.Display End If Next .Send End With Set objOutlookMsg = Nothing Set objOutlook = Nothing End Sub
Um dieses Verfahren zu testen, geben Sie im Direktfenster die folgende Zeile ein, und drücken Sie dann die EINGABETASTE:
SendMessage "C:\My Documents\Customers.txt"
Um die Nachricht ohne Angabe einer Anlage zu senden, lassen Sie das Argument beim Aufrufen der Prozedur wie folgt aus:
SendMessage
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für