Hello ElmerS,
Add this code to your macro. It will set a reference to the user's version of Outlook and allow you to early bind the object in the VBE.
'Written: February 04, 2009
'Author: Leith Ross
'Summary: Automatically loads the correct Outlook library
' and sets a reference to it in the Visual Basic Editor
Sub LoadOutlookLibrary()
Dim olPath As String
Dim WSH As Object
Set WSH = CreateObject("WScript.Shell")
olVersion = WSH.RegRead("HKCR\Outlook.Application\")
Select Case olVersion
Case "Microsoft Outlook 8.0 Object Library"
ObjLib = "msoutl8.olb"
Case "Microsoft Outlook 98 Object Library"
ObjLib = "msoutl85.olb"
Case "Microsoft Outlook 9.0 Object Library"
ObjLib = "msoutl9.olb"
Case "Microsoft Outlook 10.0 Object Library", "Microsoft Outlook 11.0 Object Library"
ObjLib = "msoutl.olb"
End Select
olPath = Split(Environ("Path"), ";")(0) & "\"
On Error Resume Next
Application.VBE.ActiveVBProject.References.AddFromFile olPath & ObjLib
Set WSH = Nothing
End Sub
Bookmarks