从Access发送HTML格式的电子邮件

时间:2013-12-27 00:28:23

标签: ms-access access-vba ms-access-2013

当您的默认邮件客户端不是Outlook时,有没有办法以HTML格式发送邮件(如果可能,还有附件)?

非常感谢任何解决方案。

1 个答案:

答案 0 :(得分:2)

您应该能够使用CDO(协作数据对象)。代码看起来像这样:

Option Compare Database
Option Explicit

Sub cdoHtmlTest()
    Const urlPrefix = "http://schemas.microsoft.com/cdo/configuration/"
    Dim msg As Object  ' CDO.Message
    Set msg = CreateObject("CDO.Message")  ' New CDO.Message
    With msg.Configuration.Fields
        .Item(urlPrefix & "sendusing") = 2  ' cdoSendUsingPort
        .Item(urlPrefix & "smtpserver") = "smtp.example.com"
        .Item(urlPrefix & "smtpserverport") = 25
        .Item(urlPrefix & "smtpauthenticate") = 1  ' cdoBasic
        .Item(urlPrefix & "sendusername") = "mySmtpUserName"
        .Item(urlPrefix & "sendpassword") = "mySmtpPassword"
        .Item(urlPrefix & "smtpusessl") = False
        .Update  ' remember to do this step!
    End With
    With msg
        .To = "gord@example.com"
        .From = "gord@example.com"
        .Subject = "HTML message test"
        .HTMLBody = "This is a <strong>TEST</strong>."
        .Send
    End With
    Set msg = Nothing
End Sub

有关更多示例(包括如何发送附件),请查看here