【问题标题】:Sending out attached PDF发送附件 PDF
【发布时间】:2021-01-04 15:26:58
【问题描述】:

我正在尝试在 Outlook 中将创建的 pdf 文件附加到我的电子邮件中。除附件部分外,一切正常。

在我的代码下面找到:

Sub sendApplicationMail()
    Dim strPath As String
    strPath = Environ("USERPROFILE") & "\Desktop\"
    ChDir strPath
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strPath & "CreatedFile.pdf"
    
    Dim OutLookApp As Object
    Dim OutLookMailItem As Object
    Dim myAttachments As Object
    
    Set OutLookApp = CreateObject("Outlook.application")
    Set OutLookMailItem = OutLookApp.CreateItem(0)
    Set myAttachments = OutLookMailItem.Attachments
    
    With OutLookMailItem
        .To = "max.mustermannm@gmail.com"
        .Subject = "My Data"
        .Body = "Dear team" & "," & vbCrLf & "please find attached my pdf."
        .myAttachments.Add strPath & "CreatedFile.pdf"
        '.send 
        .Display
    End With
    
    Set OutLookMailItem = Nothing
    Set OutLookApp = Nothing
    
End Sub

【问题讨论】:

  • 那行会报错吗?

标签: excel vba pdf outlook


【解决方案1】:
.Attachments.Add strPath & "CreatedFile.pdf" 

这里不需要myAttachments

测试和工作:

Sub sendApplicationMail()

    Dim strPath As String
    Dim OutLookApp As Object
    
    strPath = Environ("USERPROFILE") & "\Desktop\"
    
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strPath & "CreatedFile.pdf"
    
    Set OutLookApp = CreateObject("Outlook.application")
    
    With OutLookApp.CreateItem(0)
        .To = "max.mustermannm@gmail.com"
        .Subject = "My Data"
        .Body = "Dear team" & "," & vbCrLf & "please find attached my pdf."
        .Attachments.Add strPath & "CreatedFile.pdf"
        '.send
        .Display
    End With

End Sub

【讨论】:

  • 嗨,蒂姆,以下行正在排除故障:myAttachments.Add strPath & "CreatedFile.pdf"。我只想将我创建的 pdf 附加到电子邮件中。 myAttachments 和 .Attachments.Add 有什么区别?最好的问候!
  • myAttachments 不是OutLookMailItem 的属性,因此您发布的行不起作用。你试过我上面贴的吗?
  • 一个错误。通过该更改,本地窗口显示 myAttachments.Count 从 0 更改为 1。
  • 附件是否添加到邮件中?您所说的“错误”是什么意思?
  • 附件不是用myAttachments.Add添加的,而是用Set myAttachments = OutLookMailItem.Attachments添加的myAttachments对象存在。 myAttachments.Count 属性更新为.Attachments.Add。在 Locals 窗口中可见时,Debug.Print myAttachments.Count 仍然无效。
猜你喜欢
  • 1970-01-01
  • 2016-03-30
  • 1970-01-01
  • 2018-06-20
  • 1970-01-01
  • 2011-09-09
  • 2020-08-05
  • 2020-07-03
  • 1970-01-01
相关资源
最近更新 更多