VBA - 如何绑定早期的Outlook应用程序

时间:2015-08-11 17:02:50

标签: excel vba

在我进行Windows 10升级之前,一切正常。然后,当我尝试从Excel发送电子邮件时,我开始收到此运行时错误:

  

运行时错误'-2147417851(80010105)':对象'_MailItem'的方法'To'失败

造成这种情况的代码是:

Dim aOutlook As Object

....

Set aOutlook = CreateObject("Outlook.Application")
Set aEmail = aOutlook.CreateItem(0)

aEmail.To = "emailaddress"

我被告知这是因为我'后来'绑定了这是一个错误(见here)。为了'早期'绑定我尝试了以下内容:

Dim aOutlook As Outlook.Application
Dim aMail As Outlook.MailItem

Set aOutlook = New Outlook.Application
Set aEmail = aOutlook .CreateItem(olMailItem)

aEmail.To = "emailaddress"
aEmail.Display

这也不起作用,现在我收到错误:

  

Microsoft Office Excel正在等待另一个应用程序完成OLE操作。

在给出与最初相同的错误之前。谁能指出我哪里出错?

1 个答案:

答案 0 :(得分:3)

这有点奇怪,但这是答案。在我的简单问题中,我提出:

aEmail.To = "emailaddress"

但我确实有

aEmail.To = Cells(IntCurrentRow, 3)

其中Cells(IntCurrentRow,3)包含电子邮件地址。这似乎是个问题。当我把以下内容工作时。

emailAddress = Cells(IntCurrentRow, 3)
aEMail.To = emailAddress

我不确定为什么它不能直接获取地址,但改变这一点已经解决了问题。感谢您的所有建议。