Uno de los problemas típicos con el que nos encontramos al empezar programar en Access es el de cómo crear un campo de lista desplegable en un formulario en el que el contenido de la lista dependa de lo que hemos introducido en otro campo del mismo formulario (el típico caso en el que seleccionamos un país y luego tenemos que seleccionar una ciudad y queremos que las opciones sean sólo ciudades de ese país, por ejemplo).
Vamos a explicar con unos cuantos pantallazos cómo puedes hacerlo :
Primero creas la tabla de países con Idpais y nombre del país (para poder cambiar el nombre, poner traducciones, etc y que siga siendo el mismo id)
Y luego creas el formulario sobre la tabla destino (en este caso clientes). En el modo edición presentas las propiedades del control país y en la pestaña datos pones como origen de la fila la tabla países, diciendo que el origen de la fila es una tabla/consulta y que la columna dependiente es la 1.
Luego en la pestaña formato pones el número de columnas y los anchos de las columnas para ver el nombre del país y no el id país (con esto guardamos el número de IdPais pero presentamos el nombre)
Haces lo mismo con la ciudad, pero para que sólo te saque las ciudades de un país el origen tienes que definir una consulta.
Para eso usas los puntitos que aparecen al final del campo origen de la fila cuando lo pinchas.
Seleccionas los campos que quieres incluir en la consulta y la condición , si no te aclaras con el nombre del control a poner en la condición hay un asistente pinchando en el campo condición y dándole a la opción generar.
Luego cierras la consulta y vas a la pestaña formato del control de ciudades para que se vea sólo el nombre de la ciudad, es lo mismo, sólo que en este caso son 3 columnas y se pone distinto de 0 el ancho de la tercera.
Ya sólo te queda que cada vez que cambies el campo de país se actualice la consulta que alimenta el campo de ciudad, para eso está la pestaña eventos (en este caso del control IdPais). Seleccionas el evento “después de actualizar” y le das a los puntitos.
Seleccionas generar código y metes una instrucción para que actualice el control IdCiudad (en VisualBasic se usa Me. Para referirse al objeto padre, en este caso el formulario).
No te olvides que si tienes las macros desactivadas esta actualización no funcionará.