Combo box

Hola hen9.
Cree una bese de datos en access, y tengo un formulario que consta de 2 páginas. En la primera esta el formulario principal donde se crean unos usuarios únicos, y en la segunda se agran otros usuarios asociados a los que se crean en el primer formulario los cuales se pueden repetir en esta base. Mi pregunta es como hago para crear un combo box en la casilla del nombre para cuando tenga que agregar un usuario que ya esta registrado lo seleccione en el combo box, y en los otros campos aparezca la información relacionada con el nombre seleccionado para no tenerla que digitar nuevamente.
Gracias

2 respuestas

Respuesta
1
Debes de relacionar los dos form por un campo que sea común en los dos. Por ej si tiene el form princ que viene de una tabla llamada usuarios y su primary key es coduser y el form 2 viene de otra tabla llamada permisos entonces esta tabla debe tener un campo llamado por ej coduser2 que se relaciona con la tabla 1 y el campo coduser, lo mismo debes de hacer en el form.
Utiliza la función dbúsq para filtrar los registros.
Hola
No se como se utiliza esa función.
Te agradezco me indiques que debo hacer
Gracias
Gracias
Hola hen9
Primero que nada te agradezco por tu respuesta, pero creo que no me explique bien, lo que sucede es que tengo un formulario para ingresar datos y quisiera crear un combo box en un campo para que cuando vaya a ingresar un registro nuevo el combo box me muestre la lista de los registros que ya están en la tabla y al seleccionarlo me muestre la información a de los otros campos relacionados a este para no tener que digitarlos nuevamente.
Gracias por tu colaboración.
El siguiente ejemplo devuelve información sobre el campo NombreCompañía del registro que cumple con los criterios. El dominio es la tabla CompañíasEnvíos. El argumento criterios restringe el conjunto de registros resultante a aquéllos para los que IdCompañíaEnvíos es igual a 1.
Dim varX As Variant
varX = DLookup("[NombreCompañía]", "CompañíasEnvíos", "[IdCompañíaEnvíos] = 1")
El próximo ejemplo de la tabla CompañíasEnvíos usa el control de formulario IdCompañíaEnvíos con el fin de proporcionar criterios para la función DBúsq (DLookup). Observe que la referencia al control no está incluida en los signos de comillas tipográficas que denotan las cadenas. De esta forma se garantiza que cada vez que se llame a la función DBúsq (DLookup), Microsoft Access obtendrá el valor actual del control.
Dim varX As Variant
varX = DLookup("[NombreCompañía]", "CompañíasEnvíos", "[IdCompañíaEnvíos] = " _
& Forms!CompañíasEnvíos!IdCompañíaEnvíos)
El siguiente ejemplo usa una variable, entBúsqueda, para obtener el valor.
Dim entBúsqueda As Integer, varX As Variant
entBúsqueda = 1
varX = DLookup("[NombreCompañía]", "CompañíasEnvíos", "[IdCompañíaEnvíos] = " _
& entBúsqueda)
Respuesta
1
Primero debes hacer un combo bassado en la taba de usuarios primaria, pero sin la opción de solo en la lista, por que sino no te va a dejar agregar. (Mira en el help el evento notinlist allí te explica como hacer para agregar un nuevo itema a la tabla y al combo).-
En la otra página debes tener otro combo donde el origen de registros deberá incluir la condición que el usuario primario sea el que esta en el combo principal, de esta forma solo te mostrara los que pasen ese filtro. También podrías generar el SQL con la condision, por ejemplo:
dim v_sql as string
v_sql = "SELECT usuarios2 where usuarios1 =" & me.combo1.col(0)
set me.combo2.rowsource = v_sql
Y listo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas