自动发送电子邮件适用于Outlook,但不适用于Outlook Web Apps(OWA)

时间:2020-10-21 23:40:08

标签: excel vba email outlook outlook-web-app

我有一个宏,可以使用VBA根据Excel文件中的字段在Outlook中自动发送电子邮件。效果很好。

我遇到的问题是客户端现在需要使用Outlook Web Apps(OWA)。据我了解,我的宏无法与OWA一起使用,因为VBA用于应用程序,而OWA基于浏览器。

是否可以将宏转换为可与OWA一起使用?客户端将打开OWA,因此我无需担心登录该应用程序。

我已经阅读了一些有关CDO的内容,并尝试修改我的宏,但是遇到了错误(1)尝试在电子邮件中附加几个文件时类型不匹配,以及(2)SendUsing配置值无效。

我以前没有使用过CDO,所以我不知道我在做什么。

这是我尝试使用的代码:

Set OutApp = CreateObject("CDO.Message")
Set iconf = CreateObject("CDO.Configuration")

With OutApp
  Set .Configuration = iconf
  .To = Var4
  .CC = ""
  .BCC = ""
  .Subject = "Final Estate Report"
  .HTMLBody = StrBody & "<br>"
            
  A = 1
            
  OutAttach = Dir(StrDir)
            
  Do While Len(OutAttach) > 0

     DoEvents

    .Attachments.Add StrDir & OutAttach
     OutAttach = Dir
                
     A = A + 1

  Loop
  
  .Send

  Application.ScreenUpdating = True
        
End With

任何建议或示例,以使这项工作将不胜感激

感谢您抽出宝贵时间研究此问题。...

1 个答案:

答案 0 :(得分:1)

您是否使用过Microsoft Graph。您的第一个任务是在VBA中调用API,您可以从How to call Microsoft Graph API using VBA 开始。开发人员文档here