The most obvious cause I can think of for this kind of behaviour is if the Locked property of the control is set to Yes, but from what you've said, this doesn't apply in this case. Any chance of uploading a sample version of your db?

Do you have any code running in the AfterUpdate or Change (or other) Events?

This could also be caused by an incorrect RowSource and Bound Column settings ... in most cases, the Bound Column should be 1, and the RowSource should include the PrimayKey value of the underlying recordsource in the FIRST column place.

Introduction
The Visual Basic for Applications (VBA) language is at the heart of every application that you write. It is your key to taking Access beyond the world of wizards into a world where anything is possible. This article introduces you to…

Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…