Macro Encontrar Registro en Access

Espero que me puedna ayudar, tengo la siguiente macro en Access asociada a un cuadro de texto, el objetivo es que el campo ingresado en el cuadro de texto busque en la columna código y muestre los valores de esa fila en el formulario.

Nombre formulario = Registros Monitoreos

Nombre de la Tabla = Registros Monitoreos

El problema que tengo es que si no ingreso datos, me aparece correctamente el mensaje, pero si ingreso un número que está en la base no hace nada.

Tomé esta macro de youtube y la adapté a mi caso, pero no logro identificar el error.

Espero que me puedar ayudar, son mis primeros pasos en access.

1 respuesta

Respuesta
4

Si me permites un consejo, olvídate de las macros. Es mucho más sencillo hacerlo en código VB.

Supongamos que tienes un cuadro de texto llamado(propiedades-Otras-Nombre) Código. Y quieres que en función de el valor que escribas, en otro control, por ejemplo un combinado te muestre una serie de valores de tabla relacionados con ese código. En las propiedades del cuadro de texto código, en eventos-Después de actualizar crea un procedimiento de evento y entre Private Sub y End Sub escribe

nombredelcombinado.rowsource="select países from [Registros Monitoreos where código =forms![Registros Monitoreos]"

Me explico, cuando escribas un código y pulses enter, el origen de la fila del combinado serán aquellos países de la tabla cuyo código coincida con el que has escrito en el cuadro de texto.

Se puede hacer de más formas y más sencillo pero habría que saber exactamente como lo quieres, donde quieres ver los resultados y si código es texto o numérico.

Donde pone países puedes poner cualquier campo.

En el caso de que quisieras que al escribir un código te rellenara otros cuadros de texto tendrías que poner

nombrecliente=Dlookup("nombre","nombretabla","código=forms.....")

Y en el caso de que el cuadro de texto estuviera por ejemplo en el encabezado y quieras que el formulario te muestre todos los registros relacionados con ese código, en el evento Después de actualizar de ese cuadro puedes poner

form.recordsource="selct * from [registros monitoreos] where código =forms![registros monitoreos]!código"

O sea, que el origen de registros del formulario sean aquellos de la tabla cuyo código coincida con el que has puesto en el cuadro de texto

entiendo un poco de VB, lo utilizo para algunas cosas en Excel, pero lo que me indicas es nuevo, y estoy desorientado. 

Lo que necesito es que al ingresar un código (que es numérico) en el cuadro de texto, busque en la tabla y me traiga al formulario los valores que corresponden a ese código.

La finalidad es buscar un registro por código para hacer actualizaciones en el registro. 

Esta formula me ayudaría con eso?

nombredelcombinado.rowsource="select países from [Registros Monitoreos where código =forms![Registros Monitoreos]"

Disculpa lo básico, pero no entiendo eso de nombre del combinado..

El formulario y la tabla es : 

Los botones son: 

Jonathan, creo que lo mejor es que si quieres, repito, si quieres me mandes un mensaje a [email protected] y te mando un ejemplo de las diferentes posibilidades que tienes. Créeme es muy sencillo. Si lo haces, en el asunto del mensaje pon tu alias Jonathan ya que si no sé quien me escribe ni los abro.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas