• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 11635
  • Last Modified:

ActiveX component can't create object - Email thru Outlook

Problem
I get the error "ActiveX component can't create object" on the 2nd line of code in Access 2003.  Same database (mdb) opened in Access 2010 it works without problems.
            Dim objOutLkApp As Object
            Set objOutLkApp = CreateObject("Outlook.Application")

Some Facts
    1) Use the same code all the time for my customers with Access 2003 & Outlook 2003
    2) I was adding email capability to an app and discovered the error on my machine.
    3) I have installed Office 2010 but kept Access 2003
    4) I have no missing references and I do not reference Outlook reference library -  I like using late binding on purpose.

    5) I've tried referencing Microsoft Outlook 14.0 Object Library with the following code, but got the same error (Early Binding).
               Dim objOutLkApp As Outlook.Application        
               Set objOutLkApp = New Outlook.Application

    6) Telling my customers to upgrade to 2010 is not an option    

Any Thoughts?
Thanks for any help
LJG
0
LJG
Asked:
LJG
  • 5
  • 3
  • 3
  • +2
3 Solutions
 
GrahamMandenoCommented:
There should be no problem automating Outlook 2010 from Access 2003 - I have done this in dozens of applications myself.

Does the problem occur on more than one computer?  Usually such a problem is due to a missing or damaged component, or a fault in the registration of the automation server on a single computer.  This can be fixed by repairing the installation.

First make sure that all Office apps are closed, then go to Programs and Features in the Control Panel and find Microsoft Office 2010.  Right-click on it and click Change.  Select Repair and click Continue.

With luck, when the procedure completes your problem should be solved.

Best wishes,
Graham Mandeno [Access MVP 1996-2013]
0
 
apache09Commented:
Is this code creating or opening an email?

If it is, its possible the mapi dlls that allow the MAPIMail Service to run are broken or corrupt.

Could look at renaming/recreating the mapi dlls
http://www.ctimls.com/support/kb/error%20fixes/fix_mapi_error.htm

This usualyl fixes issues sending mail from other apps
0
 
Alexander Eßer [Alex140181]Software DeveloperCommented:
Maybe this site helps, too:

http://support.microsoft.com/kb/319844/en-us
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
David LeeCommented:
LJG,

As a test, how about trying to create an instance of Word or Excel instead of Outlook?  The point of the test would be to see if the problem is with Outlook or with any of the Office 2010 apps.
0
 
LJGAuthor Commented:
Lots of good ideas - Just not an answer yet.  Any other ideas?

GrahamMandeno
1) It does work with no problems on my laptop (both Access 2003 & 2010) so we know it's something with my desktop.

2) From the Control Panel I repaired Office 2010 / shut down my computer-restarted / Still the same problem.

BlueDevilFan
                  Dim objOutLkApp As Object  
                  Set objOutLkApp = CreateObject("Outlook.Application")
                  Set objOutLkApp = Nothing

------------------------ All the below work in 2010
      Set objOutLkApp = CreateObject("Outlook.Application") <--- Outlook does not work in 2003
      Set objOutLkApp = CreateObject("Word.Application") <--- This Works  in 2003
      Set objOutLkApp = CreateObject("Excel.Application") <--- This Works  in 2003

Other folks - thanks for the links but neither helped.

Any other ideas at this point???

Thanks for all your thoughts.
0
 
David LeeCommented:
So it's just Outlook that doesn't work.  That's bizarre.  What version of Windows is on the computer and is it 32 or 64 bit?  Is Access 2003 32 or 64 bit?  How about Office 2010?
0
 
LJGAuthor Commented:
Windows 7 Prof / 64 bit
Office 2010 - 32 bit
Office 2003 - 32 bit

Isn't life suppose to be simpler :)
0
 
Alexander Eßer [Alex140181]Software DeveloperCommented:
Have you tried
 Set objOutLkApp = CreateObject("Outlook.Application.??")
where ?? might be 11 or 12 or whatever, since you have installed Office "twice"?!
... just a thought...
0
 
David LeeCommented:
Purely as a test, how about creating a new database and try creating an instance of Outlook from it?  The point of this test is to determine if there's something wrong with the database you're using now.
0
 
LJGAuthor Commented:
Thanks again for the responses.

------------------------ All the below work in 2010
      Set objOutLkApp = CreateObject("Outlook.Application.14") <--- Outlook does not work in 2003
      Set objOutLkApp = CreateObject("Word.Application".14) <--- This Works  in 2003
      Set objOutLkApp = CreateObject("Excel.Application.14") <--- This Works  in 2003

----- In case you want to ask ------------------- Does Not work in 2003 or 2010 ----
      Set objOutLkApp = CreateObject("Outlook.Application.11")

----------------------------
Yes = I've tried it in 3 different 2003 databases.

thanks!
0
 
GrahamMandenoCommented:
Hi LJG

Are you absolutely sure you have only one version of Outlook installed?  Outlook does not take kindly to multiple versions.

Just to confirm the problem is definitely in Outlook 2010, open Word 2010 and press Alt-F11 to open the VBA window.  In the Immediate pane, type:
?CreateObject("Outlook.Application").Version

It should respond with 14.0.0.6126 or something similar.

If it fails and gives an error then Outlook is definitely broken.  

In this case I suggest you cut your losses and completely uninstall Office 2012 and reinstall it.  There are all sorts of things you can check like registry keys and versions of DLLs, but if the installation repair failed to fix the problem then it will be very difficult to find it manually.

One other thing you could try before uninstalling is to disable all Outlook add-ins: Outlook File button | Options | Add-Ins | Manage: COM Add-Ins | Go... | then uncheck all the items. If this solves the problem, then re-enable one add-in at a time until the problem reappears.

Good luck!
Graham
0
 
LJGAuthor Commented:
Graham
Thanks so much - I have the version below, but I can't do the Com Addins until tomorrow sometime.

?CreateObject("Outlook.Application").Version
14.0.0.6131

Thanks
LJG
0
 
GrahamMandenoCommented:
Hmmm...

The fact that ?CreateObject("Outlook.Application").Version returns any result at all suggests that the problem is NOT with Outlook 2010, and is therefore in Access 2003.

I suggest you move your focus back to Access 2003 and try a Detect and Repair (from the Help menu).

These interoperability problems really can be pigs to solve!

Cheers,
Graham
0
 
LJGAuthor Commented:
Thanks for all the work EVERYONE did for me.

I've taken out all the Outlook Add-ins - shutdown the computer - did not solve the problem.


Sometime in the next two weeks, I'll re-install Office 2010.  If that works I'll come back an let everyone know

Go have some fun today - LJG
0

Featured Post

Free Backup Tool for VMware and Hyper-V

Restore full virtual machine or individual guest files from 19 common file systems directly from the backup file. Schedule VM backups with PowerShell scripts. Set desired time, lean back and let the script to notify you via email upon completion.  

  • 5
  • 3
  • 3
  • +2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now