CTM
asked on
Run Time Error 429: ActiveX component can't create object
Hello,
I'm receiving a "Run-time error 429: ActiveX
component can't create object" whenever I try to run
a ACCESS DB program. I've went to the MICROSOFT knowledge
base support site for an answer. Found one but when i
ran the Set dbs = DBEngine .OpenDatabase("<path>\<fil ename>"), I continue to get the same error.
Seems that in the Debug statement Set dbs functionality
is not saving the option that I set for it. Has anyone
experinced this problem before. If so what was the best
way to fix it. This question is worth 300 points, becuase
it's kicking my butt.
I'm receiving a "Run-time error 429: ActiveX
component can't create object" whenever I try to run
a ACCESS DB program. I've went to the MICROSOFT knowledge
base support site for an answer. Found one but when i
ran the Set dbs = DBEngine .OpenDatabase("<path>\<fil
Seems that in the Debug statement Set dbs functionality
is not saving the option that I set for it. Has anyone
experinced this problem before. If so what was the best
way to fix it. This question is worth 300 points, becuase
it's kicking my butt.
Does one of your forms have a calender control or any ACTx control of that sort? If so see if you have a missing reference and if not then do not use the control on a continuos form
Is the database in Access 97 or 2000? If it was converted recently from A97 to A2K you might need to adjust the project references. Open any code module and select Tools/References from the menu. Check the list and make sure that Microsoft DAO 3.6 is selected and shows up higher in priority than the reference for Microsoft ActiveX Data Objects (ADO).
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
KMAN, MGRATTAN,DEVTHA,
To clearify the question. The MS Access in use is 97. I have a DEBUG statement that specifices that Set dbs is not configured (it's highlighted
in yellow). I can send each of you a copy of this via
email so that you may get more info that I'm not able to
provide. My email is psd31@navsta.rota.navy.mil . Email
me and I'll provide the Debug statement to you.
CTM
To clearify the question. The MS Access in use is 97. I have a DEBUG statement that specifices that Set dbs is not configured (it's highlighted
in yellow). I can send each of you a copy of this via
email so that you may get more info that I'm not able to
provide. My email is psd31@navsta.rota.navy.mil
me and I'll provide the Debug statement to you.
CTM
Looking at your code, I see you are not destroying collections when you are finished with them. Destroying means:
Set dbs = Nothing
...for example.
In your code for Sub FillOptions, you set dbs to open an external Database, create some recordsets, the close, but you never destroy it. Then your button code attempts to be set to CurrentDb. This may not cause your error, but it is necessary to practice the collection destruction to prevent Access from hanging and inevitable corrupting.
Also, you could simply refer to CurrentDb when setting a recordset for this instance. Like:
Set rst = CurrentDb.OpenRecordset("s trSQL", dbOpenDynaset)
Hope this helps, K
Set dbs = Nothing
...for example.
In your code for Sub FillOptions, you set dbs to open an external Database, create some recordsets, the close, but you never destroy it. Then your button code attempts to be set to CurrentDb. This may not cause your error, but it is necessary to practice the collection destruction to prevent Access from hanging and inevitable corrupting.
Also, you could simply refer to CurrentDb when setting a recordset for this instance. Like:
Set rst = CurrentDb.OpenRecordset("s
Hope this helps, K
How does it work CT?
devtha,
did you already fix this for CTM?
did you already fix this for CTM?
Yes CT sent me the mdb and I sent it back to CT?
Obviously after fixing the problem
So, what was the solution?
This has to rank up there with the worst threads in the Access Topic area.
Isn't the purpose of EE to solve problems but also to share solutions to the problems? Why is this question different?
Isn't the purpose of EE to solve problems but also to share solutions to the problems? Why is this question different?
Let us wait CT's response and I shall put the solution.
KMAN:
Come on now, this solution is not accepted by CT. The db seems to be working fine so please be patient It was CT's who asked to send him an email for a copy of the mdb. I did respond and it worked out. So let us wait for his response.
Come on now, this solution is not accepted by CT. The db seems to be working fine so please be patient It was CT's who asked to send him an email for a copy of the mdb. I did respond and it worked out. So let us wait for his response.
CT your response?
CT-
I had this same issue and it turned out to be my .dll files. Have you changed any .dll's or installed any new Microsoft programs? If so, you will have to register your .dll using regsvr32.exe
I had this same issue and it turned out to be my .dll files. Have you changed any .dll's or installed any new Microsoft programs? If so, you will have to register your .dll using regsvr32.exe
ASKER
Devtha,
Thanks a lot. You did a excellent job on the Database. I really appreciate your help. I'm referring
you to one of the guys who wrote that database. He's
still in a learning curve on working with access. I'll
be sending him your email addresses. Again thanks.
CTM
Thanks a lot. You did a excellent job on the Database. I really appreciate your help. I'm referring
you to one of the guys who wrote that database. He's
still in a learning curve on working with access. I'll
be sending him your email addresses. Again thanks.
CTM
And the solution was.....?????
So devtha fixed the database, but my question is, did CTM learn anything? I sure didn't.
OK the database was in a uncompiled state and upon decompile and compile I got errors that I had to look into. There was a sub on one of the forms that was refering to chk boxes that never existed. I removed the sub also the form was crashing on the following lines.
'Set dbs = OpenDatabase("<path>\<file mane>")
'TAKE A LOOK AT THIE FOLLOWING LINE CLARENCE
Set dbs = CurrentDb()
I hope this calms you guys down and concentrate on some other questions.
'Set dbs = OpenDatabase("<path>\<file
'TAKE A LOOK AT THIE FOLLOWING LINE CLARENCE
Set dbs = CurrentDb()
I hope this calms you guys down and concentrate on some other questions.
devtha,
I think you know better than that. You need to explain what was causing the form to "crash" on that particular line of code and what you did to resolve it. That was the original question and, as yet, nobody has posted the solution to that question.
In your last comment, you posted the lines of code that were crashing but you did not indicate what the solution was. Did changing the line from OpenDatabase() to CurrentDb() fix the problem? If not, what did? If that did fix the problem, why?
Don't get upset if we are asking for this information; it is expected by the users and other experts as well as by the moderators and I'm sure you are aware of this.
I think you know better than that. You need to explain what was causing the form to "crash" on that particular line of code and what you did to resolve it. That was the original question and, as yet, nobody has posted the solution to that question.
In your last comment, you posted the lines of code that were crashing but you did not indicate what the solution was. Did changing the line from OpenDatabase() to CurrentDb() fix the problem? If not, what did? If that did fix the problem, why?
Don't get upset if we are asking for this information; it is expected by the users and other experts as well as by the moderators and I'm sure you are aware of this.
Thats is not a problem MG...I just cannot stand the sarcasm.
'Set dbs = OpenDatabase("<path>\<file mane>")
'TAKE A LOOK AT THIE FOLLOWING LINE CLARENCE
Set dbs = CurrentDb()
As you can see the commented line was causing problem.
and my comments for Clarence states that the following line was used instead.
That is why I did not delete the old line so Clarence can figure out the difference.
Rest I explained earlier.
Cheers.
:-)
'Set dbs = OpenDatabase("<path>\<file
'TAKE A LOOK AT THIE FOLLOWING LINE CLARENCE
Set dbs = CurrentDb()
As you can see the commented line was causing problem.
and my comments for Clarence states that the following line was used instead.
That is why I did not delete the old line so Clarence can figure out the difference.
Rest I explained earlier.
Cheers.
:-)
Thank you.
Set dbs = OpenDatabase("<path>\<file
Also, this collection is aonly available if you are using DAO. ADODB has no Database or Workspace collections, just Connections.
Is your DBEngine object valid when the Set dbs... happens?