Access - cuadro combinado

 
Vista:

cuadro combinado

Publicado por ivancho (8 intervenciones) el 06/07/2009 18:16:21
que tal estoy haciendo una aplicacion pero soy nuevo con access, tengo un cuadro combinado y quiero que cuando elija un elemento de la lista, valide y mande a traer determinado formulario, tal vez podria ser desde un boton o bien desde el evento despues de actualizar del mismo cuadro combinado. tengo entendido que es por medio de codigo. me podrian ayudar? 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

RE:cuadro combinado

Publicado por Raziel (61 intervenciones) el 06/07/2009 19:10:23
Hola!! mira, siempre hago esta aclaracion... me encuentro aprendiendo igual que tu, la verdad es que soy muy novato, pero pues con muichas ganas de ayudar.
En el evento que tu elijas, talvez en Despues de actualizar en el cbobox o al Hacer Click en algun boton podrias poner

DoCmd.OpenForm...

sustituye los puntos suspensivos por el nombre del formulario y demas requisitos que vba te solicita, si no entiendes bien como funciona el comando, siempre podras poner el puntero sobre "OpenForm" click derecho luego Definicion y luego click en el signo de pregunta de color amarillo, te mostrara la sintaxis del comando y un ejemplo de como se aplica.
Espero haber ayudado.
Saludos!!!
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

RE:cuadro combinado

Publicado por ivancho (8 intervenciones) el 07/07/2009 16:43:56
ok muchas gracias por el tip la cuestion es que no se que estoy haciendo mal que al validar el elemento seleccionado del combo, no hace nada. Dicho combo esta vinculado al campo de una tabla y al ejecutar el evento no hacce nada es decir, por ejemplo:

Private Sub combo_AfterUpdate()
miciudad = combo.Column(1)

If miciudad = "mexico" Then
Texto9 = "siiiii"
Else
Texto9 = "nooo"
End If
End Sub

simplemente no hace nada no escribe nada en el cuadro de texto. si tengo algun te agradeceria me lo hicieras ver. saludos
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

RE:cuadro combinado

Publicado por Raziel (61 intervenciones) el 08/07/2009 18:02:18
Ok, estas llevando mis conocimientos al limiteeee, jajajaja, dicen que enseñando se aprende... Algo que he estado observando desde que decidi aprender a usar Access y por consiguiente VBA y SQL (Que conste que ya he advertido que estoy apenas empezando...) es que existen muchas formas de resolver un problema, algunas muy grandes y algo lentas pero que hacen el trabajo y otras tan ligeras y elegantes que hasta dan envidia, jajajaja, yo te propongo una opcion que creo q es de las redondas y pachoncitas, ahi te va...

1.- Origen de la Fila. El valor que vemos en el Combo no necesariamente es al que se esta haciendo referencia, recuerda que para ver los datos en un combo haces una consulta en la que puedes seleccionar mas de un campo, es por esto que en las propiedades del combo especificas el numero de columnas, el ancho de las mismas y la COLUMNA DEPENDIENTE --->OJO<--- este dato es el interesante... supongamos que tu consulta te devuelve 2 campos, ID y Ciudad, en propiedades del combo (entre otras cosas) podriamos poner algo asi:
Numero de Columnas: 2
Ancho de Columnas: 0, 2.5
Columna Dependiente: 1
Lo que sucedera es que el combo te mostrara las Ciudades pero hara referencia al Id, si en Columna Dependiente ponemos 2, entonces efectivamente hariamos referencia a el Texto que denomine a cada Ciudad. Espero hasta aqui haberme explicado.

2.- Codigo en VBA. Dando por hecho que el valor que me muestra mi Combo es un Texto y no un numero, podriamos hacer lo siguiente:

IF Combobox.Value = "CIUDAD1" THEN
Textbox.Value = "COMENTARIO1"
ELSE
Textbox.Value = "COMENTARIO2"
END IF

Este pequeño codigo nos saca del apuro, pero que tal si quisieramos evaluar mas de una Ciudad? nuestro IF... END IF se veria rechoncho y lento, talvez nos serviria un poco mas un SELECT CASE... esta solucion seria mejor, te ejemplifico:

SELECT CASE Combobox.Value
CASE "CIUDAD1"
Textbox.Value = "COMENTARIO1"
CASE "CIUDAD2"
Textbox.Value = "COMENTARIO2"
CASE "CIUDAD3"
Textbox.Value = "COMENTARIO3"
End Select

Donde Combobox es el nombre de tu Combo, Ciudad 1-2-3 son las Ciudades que se pueden seleccionar dentro del Combo, Textbox es el nombre de tu Cuadro de texto y Comentario 1-2-3 es el texto que aparecera en tu Cuadro de texto.

Perdon por explayarme tanto, no encontre un mejor modo de explicarme mejor, espero haber ayudado.
Saludos!!!

Un tip!!!! una forma de saber que valor al que se hace referencia en un Combo es crear un Textbox y en Propiedades>Datos>Origen del Control>Nombre de tu Combo, podrias llevarte la sorpresa de que aunque en tu combo puedes leer una cadena de texto, lo que te muestre el Textbox sea un numero o una informacion diferente a lo que el Combo te muestra.
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