Excel VBA发送带有可变数量的附件的电子邮件

我正在尝试编写一些VBA代码,这些代码将打开Outlook并将特定文件夹中的所有PDF附加到电子邮件中。我知道如何处理一项,但是由于我不知道该文件夹包含多少项,因此我需要以某种方式将所有PDF附加到该文件夹​​中。我遵循了有关如何执行此操作的另一个教程,但遇到运行时错误438-对象不支持此属性或方法。

我仔细检查了一下,并在项目中安装了Microsoft Outlook 16.0对象库并将其激活。我在这里想念的东西有什么超级明显的吗?

Dim OutLookApp As Object
Dim OutLookMailItem As Object
Dim StrFile As String, StrPath As String

Set OutLookApp = CreateObject("Outlook.application")
Set OutLookMailItem = OutLookApp.CreateItem(0)

StrPath = "H:\Desktop\TEST_PDF\"

With OutLookMailItem
    .From "GroupMail@company.com"
    .To "GroupMail@company.com"
    .Subject "MACRO TEST"
    .Body "TEST MESSAGE"

    StrFile = Dir(StrPath & "*.*")

    Do While Len(StrFile) > 0
        .Attachments.Add StrPath & StrFile
        StrFile = Dir
    Loop

    .Display
End With

Set OutLookApp = Nothing
Set OutLookMailItem = Nothing
评论