Access - 1 combo para 3 textos

 
Vista:

1 combo para 3 textos

Publicado por Adolfo (98 intervenciones) el 08/02/2008 12:21:50
Hola (otravez :P ), no se bien como explicar esto, tengo 1 combo

----Combobox------

--Textbox1-----(Combo1.Column(1))
--Textbox2-----(Combo1.Column(1))
--Textbox3-----(Combo1.Column(1))

ok, ara si selecciono algo en el combobox me aparece en los textbox la seleccion. Ahora, como ago para poder seleccionar 1 cosa, y k me aparezca en el Textbox1 y la siguiente cosa que seleccione me aparezca en la segunta TExtbox, y asi seguidamente.

Yo e pensao en hacer un combobox pa cada Textbox xo eso keda un poko cutre.

Gracias a todos los de este foro.


-Adolfo-
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:1 combo para 3 textos

Publicado por JOSELO (232 intervenciones) el 08/02/2008 13:18:15
Disculpa pero no entiendo bien.

Tienes un cuadro de lista (Combo1) y deseas que al seleccionar un item de este control, este valor aparezca en una cuadro de texto?
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:1 combo para 3 textos

Publicado por Adolfo (98 intervenciones) el 08/02/2008 14:01:37
Si, xo eso ya me lo as dicho como hacerlo (x lo que estoy agradecido), lo que quiero es usar el mismo cuadro combinado para rellenar distintos cuadros de texto.

x ejemplo kiero seleccionar 5 productos entonces primero le doy a la ventanita y se me desplega el menu, elijo 1 (y se escribe en un cuadro de txt) y luego elijo en el mismo cuadro otro, y se me escirbe en otro cuadro de texto, lo k tb podria hacer es un boton (una macro o algo similar) que fuerse "Agregar" que seria un cuadro de texto con =combo1.column(2) y al darle al boton copia el resultado de ese cuadro de txt a otro (y asi sucesivamente)
no es que no me entiendas eske me explico muy mal por lo que veo. ... ara tengo k irme a comer, xo despues si no entiendes aun lo que quiero decir subire un screenshot o algo asi.

gracias.

y que aprovechen los que se vayan a comer ahora.

-Adolfo-
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:1 combo para 3 textos

Publicado por Enrique (1299 intervenciones) el 08/02/2008 16:06:27
Adolfo:
Si lo que necesitas es añadir a los cuadros de texto la columna que se muestra en el Combo, no es necesario hacer referencia a dicha columna, es decir, no face falta poner Texto1 = Combo1.Column(X), simplemente Texto1 = Combo1, pero si el Combo tiene varias columnas ocultas y solo una visible y necesitas llamar a una de las ocultas, entonces es necesario nombrar esa columna.

En cuanto a tu pregunta para rellenar consecutivamente los 5 cuadros de texto, prueba de esta forma:

Private Sub Combo1_AfterUpdate()
If IsNull(Texto1) Then Texto1 = Combo1.Column(1): Exit Sub
If IsNull(Texto2) Then Texto2 = Combo1.Column(1): Exit Sub
If IsNull(Texto3) Then Texto3 = Combo1.Column(1): Exit Sub
If IsNull(Texto4) Then Texto4 = Combo1.Column(1): Exit Sub
If IsNull(Texto5) Then Texto5 = Combo1.Column(1): Exit Sub
If Not IsNull(Texto1) And Not IsNull(Texto2) And Not IsNull(Texto3) And Not IsNull(Texto4) And Not IsNull(Texto5) Then
MsgBox "Ya están completos los 5 campos.", vbInformation, "Aviso"
End If
End Sub

Cada vez que se actualiza el Combo con una nueva selección, el Evento "Después de actualizar" comprueba el estado de los Texbox y vá rellenando los vacios hasta completar los 5.

Saludos
Enrique
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:1 combo para 3 textos

Publicado por Adolfo (98 intervenciones) el 08/02/2008 17:06:41
Mil gracias ! ! ! y 3 mil tb :)

-Adolfo-
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:1 combo para 3 textos

Publicado por Adolfo (98 intervenciones) el 08/02/2008 17:26:12
Lo de antes va perfecto, xo yo k siempre kiero un poko mas, y no se pues la cago...

Se puede con la misma linea de IF llenar 2 campos, e probao con And, & y e probao azer:
---------------

If IsNull(p1) Then p1 = ComboCera.Column(1) And pp1 = ComboCera.Column(2): Exit Sub
-----------------

If IsNull(p1) Then p1 = ComboCera.Column(1): Exit Sub
If IsNull(p2) Then p2 = ComboCera.Column(1): Exit Sub
If IsNull(p3) Then p3 = ComboCera.Column(1): Exit Sub
If IsNull(p4) Then p4 = ComboCera.Column(1): Exit Sub
If IsNull(p5) Then p5 = ComboCera.Column(1): Exit Sub
If Not IsNull(p1) And Not IsNull(p2) And Not IsNull(p3) And Not IsNull(p4) And Not IsNull(p5) Then
MsgBox "Ya están completos los 5 campos.", vbInformation, "Aviso"
End If

If IsNull(pp1) Then pp1 = ComboCera.Column(2): Exit Sub
If IsNull(pp2) Then pp2 = ComboCera.Column(2): Exit Sub
If IsNull(pp3) Then pp3 = ComboCera.Column(2): Exit Sub
If IsNull(pp4) Then pp4 = ComboCera.Column(2): Exit Sub
If IsNull(pp5) Then pp5 = ComboCera.Column(2): Exit Sub
If Not IsNull(pp1) And Not IsNull(pp2) And Not IsNull(pp3) And Not IsNull(pp4) And Not IsNull(pp5) Then
MsgBox "Ya están completos los 5 campos.", vbInformation, "Aviso"
End If
----------------------------
xo no funcionan, uno si k funciona xo los dos juntos no.

yo sigo probando, xo si lo lees y sabes xk pues ... mas rapido.
gracias.

-Adolfo-
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:problema solucionado gracias

Publicado por Adolfo (98 intervenciones) el 08/02/2008 18:14:28
-leer el titulo- :)

grax
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:1 combo para 3 textos

Publicado por Enrique (1299 intervenciones) el 08/02/2008 18:16:55
Prueba a sustituir el And por dos puntos ( : ), así:

If IsNull(p1) Then p1 = ComboCera.Column(1) : pp1 = ComboCera.Column(2): Exit Sub

Pero tienes que tener en cuenta que en este caso, si el campo pp1 ya tenía un valor anterior, será sustituido por el de la columna 2 del nuevo Item seleccionado, mientras que p1 solo tomará el valor si está vacío, aunque puede que eso no sea problema.

No lo he probado, pero supongo que funcionará, caso contrario comunícalo y buscamos una solución.

Saludos
Enrique
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:1 combo para 3 textos

Publicado por Adolfo (98 intervenciones) el 08/02/2008 19:44:27
Ya esta solucionado, es asi :
Private Sub ComboMasajes_AfterUpdate()
If IsNull(p1) Then p1 = ComboMasajes.Column(1)
If IsNull(pp1) Then pp1 = ComboMasajes.Column(2): Exit Sub
If IsNull(p2) Then p2 = ComboMasajes.Column(1):
If IsNull(pp2) Then pp2 = ComboMasajes.Column(2): Exit Sub
If IsNull(p3) Then p3 = ComboMasajes.Column(1):
If IsNull(pp3) Then pp3 = ComboMasajes.Column(2): Exit Sub
If IsNull(p4) Then p4 = ComboMasajes.Column(1):
If IsNull(pp4) Then pp4 = ComboMasajes.Column(2): Exit Sub
If IsNull(p5) Then p5 = ComboMasajes.Column(1):
If IsNull(pp5) Then pp5 = ComboMasajes.Column(2): Exit Sub
If IsNull(p6) Then p6 = ComboMasajes.Column(1):
If IsNull(pp6) Then pp6 = ComboMasajes.Column(2): Exit Sub
If IsNull(p7) Then p7 = ComboMasajes.Column(1):
If IsNull(pp7) Then pp7 = ComboMasajes.Column(2): Exit Sub
If Not IsNull(p1) And Not IsNull(p2) And Not IsNull(p3) And Not IsNull(p4) And Not IsNull(p5) And Not IsNull(p6) And Not IsNull(p7) Then
MsgBox "Ya están completos los 7 campos.", vbInformation, "Aviso"
End If

Gracias, :D (voy a poner un ultimo post y que paseis un buen fin de semana)

-Adolfo-
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