Visual Basic para Aplicaciones - Boton de busqueda

Life is soft - evento anual de software empresarial
 
Vista:

Boton de busqueda

Publicado por Xabi (9 intervenciones) el 02/05/2016 10:18:37
Hola tengo un Formulario de busqueda para una tabla llamada General. Y necesito que los resultado me la muestre en un Formulario llamado GeneralF. Necesito ayuda para crear el boton de busqueda
Gracias antemano
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
sin imagen de perfil
Val: 24
Ha disminuido su posición en 4 puestos en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Boton de busqueda

Publicado por Tresy (46 intervenciones) el 05/05/2016 17:41:22
Hola: en el formulario de Búsqueda (llámalo por ej. datFormB), incluye un cuadro combinado para poder seleccionar el dato que quieres. Tienes que asignar un nombre (en la ficha Otros de la Hoja de Propiedades de ese form, al cuadro combinado, por ej. "Datos". En el mismo form incluye un botón Cerrar y un botón Aceptar. En el evento clic de este último botón (ya sea mediante una macro o mediante código) le indicas que abra el form GeneralF (el que debe tener la tabla General como origen del registro), con la siguiente clásula Where: DatoBuscado (puede ser un ID u otro campo)=Forms!datFormB!Datos, donde Datos, como te dije, es el nombre del cuadro combinado en el que aparece el dato que buscas. Obviamente, el campo que muestra el datFormB, debe ser el mismo campo del DatoBuscado (el campo!!). Si necesitas coincidencias con más de un campo, debes incluir tantos cuadros combinados como campos por los que buscar, y el Evento clic del botón Aceptar debe incluir tantas condiciones Where como campos a buscar. Las macros de Access pueden escribirse en inglés (por ej. Forms, en lugar de Formularios), ya que al ejecutarse los reemplaza por los nombres en castellano. Cada condición Where que escribas debe estar presidida por la función Y (And), y toda la condición que escribas debe estar entre comillas si la escribes en el editor de Visual. Allí, la condición Where debe ser parte de la expresión: DoCmd.OpenForm "GeneralF",,, "ID u otro campo)=Forms!datFormB!Datos". Espero que me escribas si te ha sido útil la sugerencia.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Boton de busqueda

Publicado por xabi (9 intervenciones) el 06/05/2016 09:26:35
Muchisimas gracias me a servido de mucha ayuda
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

Boton de busqueda

Publicado por Xabi (9 intervenciones) el 06/05/2016 10:28:28
Tengo un pequeño problema. Ya tengo todo los campos definidos y funcionan indibidualmente si filtro por mas de 1 campo solo coje el ultimo que hemos filtrado.
Gracias antemano
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

Boton de busqueda

Publicado por Xabi (9 intervenciones) el 09/05/2016 08:53:04
Vale ya esta nose porque no queria reconocerme el "And" pero hoy le a dado pr hacerlo (que raro). Y tengo una ultima duda en los campos que son cuadros combinados no tengo ese problema pero en las cajas de texto si. El problema es que cuando estan vacias me los coje como valor osea si esta vacio buscara los que tengan ese campo vacio. Como puedo hacer para que cuando este vacio sea nulo?
Gracias de antemano
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: 24
Ha disminuido su posición en 4 puestos en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Boton de busqueda

Publicado por tresy (46 intervenciones) el 09/05/2016 22:48:14
Utiliza id, then, elseif, combinando isnull{campo)= true o false con and, no olvides End id
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

Boton de busqueda

Publicado por Xabi (9 intervenciones) el 10/05/2016 08:18:29
Lo siento pero no tengo ni la menor idea de como utilizarlos me podrias poner un ejempo con el campo Descripcion de maquina y el text box se llama C_DescMachine??
Gracias
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: 24
Ha disminuido su posición en 4 puestos en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Boton de busqueda

Publicado por tresy (46 intervenciones) el 10/05/2016 20:42:00
Xabi: en el editor de VBA, en el evento clic del botón de form de búsqueda, escribes:
If isnull(nomb del campo)=false (es decir que no está vacío) then
Docmd.openform "nomb del form cuyo origen del registro tiene el campo a buscar",,,"campo=forms!nomb del form que tiene el botón!nomb del campo
Nomb del campo: es donde escribes lo que buscas.
Estas sentencias finalizan con End If.
Para más de un campo, antes del End If, y en lugar de comenzar con If, comienzas con Elseif. El resto, con el campo correcto, es todo igual.
Escribe a mi correo: [email protected], más sencillo para contestarte.
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