ACC: Can't Change Combo Box Value If ControlSource AutoNumber
ID: Q95450
|
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.
If the ControlSource property of a combo box is set to a field that
has an AutoNumber data type (or Counter in versions 1.x and 2.0), when you
try to change the value in the combo box, you receive the following message
on the status bar:
In Microsoft Access 7.0 and 97
Control can't be edited; it's bound to AutoNumber field <field
name>.
In Microsoft Access 1.x and 2.0
Control can't be edited; it's bound to Counter field <field name>.
CAUSE
The control source of a combo box is a table field where Microsoft Access
writes your combo box selection. By design, modifications to an AutoNumber
field are not allowed. Therefore, if the ControlSource property of a combo
box is set to an AutoNumber field, Microsoft Access cannot update the value
in the AutoNumber field; therefore, you cannot change the combo box value.
Microsoft Access gives you the message to tell you why it cannot update the
combo box control.
RESOLUTION
Either change the data type of the field in the ControlSource property
of the combo box, or set the ControlSource property to a field that does
not have an AutoNumber (or Counter) data type.
MORE INFORMATION
Steps to Reproduce Behavior
- Start Microsoft Access, and open the sample database Northwind.mdb
(or NWIND.MDB in Microsoft Access 2.0 or earlier).
- Create a new table called MyTest:
Table: MyTest
------------------------
Field Name: MyAutoNumber
Data Type: AutoNumber (or Counter in Microsoft Access 1.x and 2.0)
Field Name: MyData
Data Type: Number
Field Name: MyBucket
Date Type: Number
- Open the MyTest table in Datasheet view and enter a few records by
typing numeric values in the MyData field. Note that Microsoft Access
automatically fills in the MyAutoNumber field and puts zeroes in the
MyBucket field as you type values in the MyData field.
- Create a new blank form in Design view based on the MyTest table.
- Add a combo box to the form and set the following properties:
Combo Box:
ControlSource: MyAutoNumber
RowSource: MyTest
- Switch the form to Form view. Note that the combo box values are the
sequential numbers coming from the MyAutoNumber field.
- In the combo box list, try to select a new value. Note that you receive
the error message on the status bar, and the value in the combo box does
not change.
- Switch back to Design view and change the combo box ControlSource
property from MyAutoNumber to MyBucket.
- Switch back to Form view and repeat step 7. Note that now you can select
items from the combo box. If you look at the contents of the table, you
can see that the values you selected were written to the MyBucket field.
REFERENCES
For more information about combo boxes, search on "combo boxes," and then
"Binding columns to fields" using the Microsoft Access 97 Help Index.
Keywords : kberrmsg kbusage FmsCmbo
Version : 1.0 1.1 2.0 7.0 97
Platform : WINDOWS
Issue type : kbprb