ACC: #Error When Control Name Used in ControlSource Expression

ID: Q90860


The information in this article applies to:
  • Microsoft Access versions 1.0, 1.1, 2.0, 7.0, 97


SYMPTOMS

Novice: Requires knowledge of the user interface on single-user computers.

A field returns a "#Error" error message when the ControlSource property (bound field) contains the Name property in an expression. However, in an unbound text box, the same expression generates the expected value rather than "#Error."

NOTE: The Name property is called the ControlName property in Microsoft Access versions 1.0 and 1.1.


CAUSE

There is a circular dependency in either a form or a report. Control names take precedence over field names when binding. Microsoft Access does not provide a more descriptive error for circular references.


RESOLUTION

If you need to reference the Name property in an expression, use an unbound text box. Otherwise, reconstruct the ControlSource property expression so that it does not reference the Name property.

Another alternative is to change the name on the form.


STATUS

This behavior is by design.


MORE INFORMATION

If you create a form based on a table or query and drag a numeric field onto the form, by default the ControlSource property and the Name property will be given the name of the actual field in the underlying table or query. If you change the ControlSource property to an expression that includes the Name property, you will see "#Error" in this field when you switch to Form or Datasheet view. The following example demonstrates an expression within the ControlSource property:


      Name:            Person_ID
      ControlSource: =[Person_ID] + 1 

Additional query words: pounderror

Keywords : kberrmsg kbusage ExrOthr
Version : 1.0 1.10 2.0 7.0 97
Platform : WINDOWS
Issue type : kbprb


Last Reviewed: March 11, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.