Access - Busqueda en varias tablas

 
Vista:
sin imagen de perfil
Val: 3
Ha disminuido su posición en 58 puestos en Access (en relación al último mes)
Gráfica de Access

Busqueda en varias tablas

Publicado por Adrian (2 intervenciones) el 22/02/2019 13:00:04
Buenas,

tengo una duda sobre como hacer una búsqueda en una base de datos que tiene varias tablas, por ejemplo buscar a una persona y que me diga en que tabla está.

si alguien me pudiera ayudar.

Muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Norberto
Val: 1.094
Oro
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Busqueda en varias tablas

Publicado por Norberto (753 intervenciones) el 25/02/2019 15:01:44
Hola:

Puedes hacer una consulta de union. Supongamos que tienes 5 tablas y que en cada una de ellas tienes un campo llamado nombre. Cominezas una consulta nueva y pasas a la vista SQL ya que estas no se pueden confeccionar en la vista Diseño. La sintaxis sería la siguiente:

SELECT Nombre, "Tabla1" As Tabla FROM Tabla1
UNION SELECT Nombre, "Tabla2" FROM Tabla2
UNION SELECT Nombre, "Tabla3" FROM Tabla3
UNION SELECT Nombre, "Tabla4" FROM Tabla4
UNION SELECT Nombre, "Tabla5" FROM Tabla5;

Lo que tienes que hacer a continuación es hacer una búsqueda del campo Tabla en dicha consulta con el criterio según el nombre:

1
Tabla = DLookup("Tabla", "Consulta de Unión", "Nombre = '" & NombreBuscado & "'")

Un saludo,

Norberto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 3
Ha disminuido su posición en 58 puestos en Access (en relación al último mes)
Gráfica de Access

Busqueda en varias tablas

Publicado por Adrian (2 intervenciones) el 26/02/2019 13:04:16
Buenas,

gracias por la respuesta aunque tengo algunas dudas sobre ella:

1.- el nombre de las tablas pueden ir con espacios?
2.- Supongo que el nombre de las tablas van sin comillas.


está línea no se ponerla: Tabla = DLookup("Tabla", "Consulta de Unión", "Nombre = '" & NombreBuscado & "'")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Norberto
Val: 1.094
Oro
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Busqueda en varias tablas

Publicado por Norberto (753 intervenciones) el 27/02/2019 13:18:15
Hola de nuevo.

El nombre de la tabla que va entre comillas en la expresión (antes del FROM) debes de mantenerla entre comillas. El que va después del FROM deberá de ir entre corchetes si lleva espacios en blanco o comienza por un caracter que no sea letra. Por ejemplo:

SELECT Nombre, "Tabla 1" As Tabla FROM [Tabla 1]
UNION SELECT Nombre, "Tabla 2" FROM [Tabla 2]...

Esto te va a generar una consulta con dos campos: Nombre y Tabla. El primero tendrá el nombre y el segundo la tabla de la que sale el registro.

Como no dices cómo vas a hacer la búsqueda he imaginado que en un formulario y esa sería la expresión en VBA para almacenar en una variable llamada Tabla. Luego ese valor lo podrías poner en un cuadro de texto, sacarlo en pantalla con un MsgBox, etc.

Si lo que quieres es, simplemente, buscar con el comando propio de Access, abres la consulta, pulsas Control+B y escribes el nombre. Access te situará en el primer registro que contenga el nombre buscado y en el campo Tabla verás en cuál se encuentra.

Un saludo,

Norberto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar