处理错误“无法找到项目或库”

时间:2015-10-24 10:24:05

标签: excel vba excel-vba

每当我收到错误“无法找到项目或库”时,我想创建一个错误处理程序,然后停用对“C:\ Program Files \ Microsoft Offfice \ Office15 \ MSOUTL.OLB”的引用。

我不知道该怎么做,所以还没有任何代码。

编辑:更具体地说,我希望代码可以在任何计算机上运行(有和没有Microsoft办公室),所以基本上没有我手动取消选中/选中工具>参考文件中的框。

Private Sub btnVergeten_Click()

Dim deApp As Object
Set deApp = CreateObject("Outlook.application")
deApp.Visible = True

Dim deMail As Object
Set deMail = deApp.createitem(deMailItem)
deMail.Visible = True

deMail.To = Worksheets("Gebruikers").Range("I2").Value
deMail.Subject = "QuedawoSoft - Kassasysteem paswoord vergeten"
deMail.Body = "De gebruikersnaam : " & Worksheets("Gebruikers").Range("E2").Value + ". Het paswoord : " & Worksheets("Gebruikers").Range("F2").Value & "."
deMail.Send

MsgBox ("De e-mail is succesvol verzonden. U zal de e-mail in een paar minuten        ontvangen.")

End Sub

1 个答案:

答案 0 :(得分:0)

好的,那么你需要忘记Outlook。 (使用或没有 Microsoft Office意味着您的代码不能依赖于Outlook。)我只想给您另一个链接,看看它:rondebruin.nl/win/s1/cdo.htm

CDO需要尝试一些,你需要知道用来发送信件的邮箱的细节。 (与SMTP设置等一样)

关于您的代码:

Set deMail = deApp.createitem(deMailItem)

deMailItem毫无意义,它应该是一个常量,olMailItem。但是,如果使用后期绑定,则不能使用Outlook命名空间中的常量。使用0代替,如olMailItem = 0。

Set deMail = deApp.createitem(0)

此外,Outlook和邮件项目都不存在visible = true。如果要显示邮件项目,请使用:

deMail.Display

哦,还有一件事。您应该测试Outlook是否正在运行,如果已经运行,则不应重新启动它,只需使用现有程序即可。请参阅here

希望这有帮助!