如何使用自動化使用 Access 2000 傳送 Microsoft Outlook 訊息
本文適用於 Microsoft Access 資料庫 (.mdb) 和 Microsoft Access 專案 (.adp) 。
摘要
本文說明如何使用自動化在 Microsoft Access 2000 中建立及傳送 Microsoft Outlook 訊息。
Microsoft 提供的程式設計範例僅供說明之用,並不具任何明示或暗示的責任擔保。 這包括 (但不限於) 任何目的之適售性及適用性的暗示責任擔保。 本文假設您熟悉示範的程式設計語言,也熟悉用以建立和偵錯程序的工具。 Microsoft 技術支援工程師可以協助說明特定程序的功能,但不會修改這些範例以提供附加功能或建構程序來滿足您的特定需求。
注意事項
如果您已安裝 Outlook 電子郵件安全性更新,下列程式代碼可能無法正常運作。
您可以使用 方法, SendObject
以程序設計方式在 Microsoft Access 中傳送 MAPI 郵件訊息。 不過, SendObject
方法不會讓您存取完整的郵件功能,例如能夠附加外部檔案或設定訊息重要性。 下列範例會使用自動化來建立和傳送郵件訊息,您可以使用該郵件訊息來利用 Microsoft Outlook 中許多方法無法使用的 SendObject
功能。
使用自動化傳送 Microsoft Outlook 郵件訊息有六個主要步驟,如下所示:
- 初始化 Outlook 會話。
- 建立新的訊息。
- 新增收件者 (收件者、CC 和 BCC) 並解析其名稱。
- 設定有效的屬性,例如 Subject、Body 和 Importance。
- 如果有任何) ,請新增附件 (。
- 顯示/傳送訊息。
以程序設計方式傳送 Microsoft Outlook 郵件訊息
在 C:\My Documents 資料夾中建立名為 Customers.txt 的範例文本檔。
啟動 Microsoft Access,然後開啟範例資料庫Northwind.mdb。
建立模組,並在 [宣告] 區段中輸入下列程式代碼行:如果該模組尚未存在,請在該區段中輸入下列程式代碼:
Option Explicit
在 [ 工具] 功能表上,選取 [ 參考]。
在 [ 參考] 方 塊中,選取 [Microsoft Outlook 9.0 物件庫],然後選取 [ 確定]。
注意事項
如果 Microsoft Outlook 9.0 物件庫 未出現在 [ 可用的參考 ] 方塊中,請流覽您的硬碟以取得 Msoutl9.olb 檔案。 如果您找不到此檔案,您必須先執行 Microsoft Outlook 安裝程式來安裝它,才能繼續進行此範例。
在新的模組中輸入下列程式:
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
若要測試此程式,請在 [ 實時 運算] 視窗中輸入下列這一行,然後按 ENTER:
SendMessage "C:\My Documents\Customers.txt"
若要在不指定附件的情況下傳送訊息,請在呼叫程式時省略 自變數,如下所示:
SendMessage
意見反映
https://aka.ms/ContentUserFeedback。
即將推出:我們會在 2024 年淘汰 GitHub 問題,並以全新的意見反應系統取代並作為內容意見反應的渠道。 如需更多資訊,請參閱:提交及檢視以下的意見反映: