使用带有Windows Scheduler的Excel VBA通​​过Outlook发送电子邮件

时间:2018-02-20 15:23:30

标签: excel vba excel-vba outlook scheduler

我使用以下代码发送电子邮件。

手动运行时,没有问题。

作为Windows计划程序的一部分运行时(Excel中的宏在文件打开时自动运行),电子邮件不会被发送。然而,我可以保存为草稿(。保存而不是.Send)。我没有收到任何错误消息,并且计划任务正在完成,没有任何问题。

Excel版本&展望:2016年

事件顺序:

  1. 计划程序打开Excel文件
  2. 宏查询数据库(打开时)
  3. 创建单个Excel文件
  4. 已创建的Excel文件已添加为电子邮件附件
  5. 电子邮件发送
  6. Sub AttachEmailStores()    
        Dim FileFormatNum As Long    
        Dim OutApp As Object
        Dim outMail As Object
        Dim Signature As String      
        With Application
            .ScreenUpdating = False
            .EnableEvents = False
        End With    
        Set OutApp = CreateObject("Outlook.Application")
        Set outMail = OutApp.CreateItem(0)    
                With outMail
                    .to = "test@test.com"
                    .BCC = ""
                    .Subject = "Test"
                    .Recipients.ResolveAll
                    .Send
                End With            
        Set outMail = Nothing
        Set OutApp = Nothing    
        With Application
            .ScreenUpdating = True
            .EnableEvents = True
        End With
    End Sub
    

    我正在使用这些库--16.0对象库。

0 个答案:

没有答案