Excel VBA Outlook自动化代码段在一个工作簿中工作,但不在另一个工作簿中
我正在尝试将一段代码转移到另一个工作簿。 该代码完美工作簿1,但生成一个
编译错误未定义用户定义的types
在workbook2上运行时。
这是有问题的代码。
' Set up Outlook Namespace Set OL = CreateObject("Outlook.Application") Dim olNS As Outlook.Namespace Dim olFol As Outlook.Folder Set olNS = OL.GetNamespace("MAPI") Set olFol = olNS.GetDefaultFolder(olFolderInbox) ' Current users address Address = olNS.Accounts.Item(1).SmtpAddress
该错误来自olNS As Outlook.Namespace
生成错误是因为尽pipe您使用OL
后期绑定您仍然使用olNS
早期绑定并可能没有在第二个工作簿中设置Outlook的引用。
如果你想使用后期绑定,那么做到这一点,例如:
Dim olNS As Object Set olNS = CreateObject("Outlook.Namespace") Dim olFol As Object Set olFol = CreateObject("Outlook.Folder") 'etc...
或者只是在第二个工作簿中设置对Outlook的引用: