Solved

Database Can't find the field 'Forms' referred to in your expression

Posted on 2004-04-11
9
1,155 Views
Last Modified: 2007-12-19
I have a database working fine in MS-Access XP.
It used to work fine in MS-Access 97 too..

Now i am trying to open a form in MS-Access 2000 i am getting "Database Can't find the field 'Forms' referred to in your expression"

There are no missing references.

Anyone familiar with this error?

Thank you,
0
Comment
Question by:talal
9 Comments
 
LVL 3

Expert Comment

by:RLGoldberg
ID: 10802341
Two thoughts:

1) What version is the database in?  Is it in 2002 and you are trying to run it in a previous version?

2) You might have a field reference that has been formatted bad.  I have seen this when the query changes around the references.  Look to see if your query or data source is referencing something on the form (Forms!frmName!ctrName).

Good Luck!
Code On...
dataDOC
0
 

Author Comment

by:talal
ID: 10802494
It is 2000 format.
There are alot of references Form!FieldName
I have taken this from another developer. To my surprise this works in XP AND 97. I am not sure why wouldnt work for 2000.

There are TOO MANY references like (Form!FieldName) form example:
Form!txtCustomerID
in queries. This database has few hundereds of quesries.. i am trying to avoid changing them one by one.

What is puzzeling me is why worked in other versions of ACCESS and failed in 2000?

May be i am missing something..
Is there anyway i can see WHERE the problem is?

When it gives me this error ACCESS freezes for fre seconds then quits.
0
 
LVL 3

Expert Comment

by:RLGoldberg
ID: 10802540
Just focus on that particular form that you are opening that is causing the crash...

1) Identify all of the querries that are used on the form and try to open each query seperately to verify that they are or are not working.  If they are all working go onto #2
2) Open the code behind the form and search for all instances of the word "Forms" and see if any of them are orphaned
3) You could chang ethe code behind the form to read me.fieldname instead of form!fieldname, this should reduce the error potential.

Good Luck!
dataDOC
0
 

Author Comment

by:talal
ID: 10802573
:( done that... the form that is opening has more than 150 object!!! the previous developer had it layered.

Well... gatta keep trying.

Thank you,
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 
LVL 3

Expert Comment

by:RLGoldberg
ID: 10802585
You might try to place message boxes into the opening code to try and track down the point of error

dataDOC
0
 
LVL 54

Accepted Solution

by:
nico5038 earned 125 total points
ID: 10802599
0
 

Author Comment

by:talal
ID: 10803112
RLGoldberg: Because i dont have the option of debugging i believe that the error is caused in a list or something.. so having a message box wont work (i think) however i will try anyway.

nico5038: Yes i will try that.. i hope it is something as simple.

Does anyone know if the technique of using [Form]![txtCustomerID] works? I was surprised that it did in XP and 97 because i have always used [Forms]![frmName]![cntName]

Thanks everyone... i hope that i will get this project complete tonight :p

0
 
LVL 26

Expert Comment

by:Alan Warren
ID: 10803322
The syntax [Form]![txtCustomerID] works definately works in acc 2000.

If you have multiple versions of access installed on your machine you may have corrupted the references, is it possible to test the db on another machine that only has win2000 installed. If it runs on virgin win2000 machine, the quickest fix may be to reinstall access 2000 on your development machine.

Alan
0
 

Author Comment

by:talal
ID: 10817597
Thank you all. although i would like to give all of you points .. Actually Nic's was the first to point out the SPs.. Thanks all.
0

Featured Post

Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

Join & Write a Comment

Experts-Exchange is a great place to come for help with solutions for your database issues, and many problems are resolved within minutes of being posted.  Others take a little more time and effort and often providing a sample database is very helpf…
Overview: This article:       (a) explains one principle method to cross-reference invoice items in Quickbooks®       (b) explores the reasons one might need to cross-reference invoice items       (c) provides a sample process for creating a M…
Familiarize people with the process of retrieving data from SQL Server using an Access pass-thru query. Microsoft Access is a very powerful client/server development tool. One of the ways that you can retrieve data from a SQL Server is by using a pa…
In Microsoft Access, learn how to use Dlookup and other domain aggregate functions and one method of specifying a string value within a string. Specify the first argument, which is the expression to be returned: Specify the second argument, which …

760 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now