Results 1 to 4 of 4
  1. #1
    Join Date
    Nov 2002

    Angry Unanswered: Going from 2003 - 2007

    I have a database that works fine in access 2003, however when I try to run a copy on a system that has access 2007 I get the following errors:

    Error 1)

    " An error occured while loading 'Form_Form Name'. Do you want to continue laoding the project?"

    I pressed yes and then I get ..

    Error 2)

    "Invalid procedure call or argument"

    I clicked Ok and then ...

    The Microsoft Visual Basic opens and stops at the line of vba code for that form

    "Private Sub Form_Open(Cancel as integer)"

    Does anyone has an idea? I have no references missing and my macros have the alloweable access as well as the location where my database is located.

    Strange, I have google all around and I cannot find a solution.
    Last edited by hespinoza; 01-08-10 at 18:58. Reason: misspelled title

  2. #2
    Join Date
    Oct 2009
    most 07 ports involve the failure to set up the trust location....have you ?

  3. #3
    Join Date
    Jun 2005
    Richmond, Virginia USA
    Provided Answers: 19
    The "Trusted location" problem is always worth looking at, but I think the fact that the code is starting to run and then bombing is indicative that it is in a trusted location, but I could be wrong. It really sounds more like a missing reference. Could we see the entire Form_Open sub? It sounds as if that's where the problem is arising from.
    Hope this helps!

    The problem with making anything that fools are so darn ingenious!

    All posts/responses based on Access 2003/2007

  4. #4
    Join Date
    Dec 2004
    Madison, WI
    You need to copy the code in the Form_Open event and show us what it looks like.

    Otherwise, check for anything that "Filters" the data on the form. I've had problems after converting (as well as simultaneous use) between 2003 mdb's to 2007 with the Filter command or data being filtered versus criteria in the query. For some reason, 2007 doesn't like this. Try removing the recordsource for the form and then opening it (saving the recordsource first). You may get an error or two if you have events firing based on values but if it still loads and doesn't cause the same error, you know it's probably not data related. If it opens without problems, add the recordsource back into the form and look at the properties of the form. Sometimes a property setting of the form causes errors with conversions. That might at least tell you if it's data related versus the code itself. Otherwise check any and all expressions in ALL fields, especially things like default values which are not easy to spot. Conditional formatting of a field is another spot often mislooked. A bad expression in a field which the 2 different versions doesn't like would cause problems.

    I personally wouldn't advise using 2007 on 2003 mdbs along with 2003 users (the testing I did on ours was not encouraging and I had to restore backups quite often). I upsized and made a separate front-end (after fixing Filter command issues) for the 2007 users since a 2007 user would often corrupt the mdb for the 2003 user or vice-versa. But the mdb developer liked to use the Filter command quite often.

    I've also seen this type of error when I was using 2 versions of MSAccess on the same computer and would import forms from one mdb into another. If I didn't immediately debug/compile the code after importing, the form would become corrupt and I had to create a new mdb and import all the forms from backup or used the /decompile option, deleted and re-imported the form. The error is similar to the same as you stated in your post but I couldn't say if this is the problem. I might still try opening the mdb with the /decompile parameter to try and fix.
    Last edited by pkstormy; 01-08-10 at 23:41.
    Expert Database Programming
    MSAccess since 1.0, SQL Server since 6.5, Visual Basic (5.0, 6.0)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts