AddAttachment в Excel VBA не может прикрепить файл в Outlook - PullRequest
0 голосов
/ 08 февраля 2019

Я написал этот очень простой код, чтобы прикрепить файл к моей электронной почте, но электронная почта приходит без вложения.

Он даже не выдает никакой ошибки.Я убедился, что путь правильный и файл существует.Пожалуйста, помогите

Private Sub CommandButton2_Click()
On Error GoTo ErrHandler

    ' SET Outlook APPLICATION OBJECT.
    Dim objOutlook As Object
    Set objOutlook = CreateObject("Outlook.Application")
    Dim Source_File As String

    ' CREATE EMAIL OBJECT.
    Dim objEmail As Object
    Set objEmail = objOutlook.CreateItem(olMailItem)

    With objEmail
        .To = "arushi.agarwal@in.ab-inbev.com"
        .Subject = "This is a test message k"
        .Body = "Please use this template for your weekly meeting today"
        .Send        ' SEND MESSAGE.
        .AddAttachment ("C:\Claims\Try.docx")
    End With

    ' CLEAR.
    Set objEmail = Nothing:    Set objOutlook = Nothing

ErrHandler:
    '

End Sub

1 Ответ

0 голосов
/ 08 февраля 2019

Я внес небольшие изменения в ваш код, и он работает для меня.Вам также необходимо прикрепить файл перед отправкой электронного письма (например, .attachment before .send)

Private Sub CommandButton2_Click()
    On Error GoTo ErrHandler

    ' SET Outlook APPLICATION OBJECT.
    Dim objOutlook As Object
    Set objOutlook = CreateObject("Outlook.Application")
    Dim Source_File As String

    ' CREATE EMAIL OBJECT.
    Dim objEmail As Object
    Set objEmail = objOutlook.CreateItem(olMailItem)

    With objEmail
        .To = "arushi.agarwal@in.ab-inbev.com"
        .Subject = "This is a test message k"
        .Body = "Please use this template for your weekly meeting today"
        .Attachments.Add ("C:\Claims\Try.docx")
        .Send        ' SEND MESSAGE.
        '.AddAttachment ("C:\Claims\Try.docx")

    End With

    ' CLEAR.
    Set objEmail = Nothing:    Set objOutlook = Nothing
    Exit Sub
ErrHandler:
    Range("A1").Value = Err.Description
End Sub
...