Formularios Linkados y duda urgente

02/06/2005 - 17:05 por Marta | Informe spam
Hola de nuevo,

Ayer pregunté una duda y Héctor me la respondió fenomenal...
Solo me falta una cosa para que todo sea perfecto.
Tengo que entregar este formulario en unos minutos y necesito una solución a
este tema:
Tengo dos combo-box: uno de categorías y otro de subcategorías. Entonces,
cuando en el primero selecciono una categoría, en el segundo solo me aperecen
las subcategorías que corresponden a la categoría del primer combo-box.

Hasta ahí bien, pero el problema es que si cambio de selección en el primer
combo cuando ya se había seleccionado algún valor del segundo, entonces se
mantiene dentro del segundo las subcategorías anteriores, y necesitaría que
al cambiar el primero automáticamente, o bien el segundo se quedara en
blanco, o bien al desplegar el segundo aparecieran solo las opciones de la
categoría del primero.

Se puede???

Muchas gracias

Preguntas similare

Leer las respuestas

#11 Héctor Miguel
02/06/2005 - 22:47 | Informe spam
hola, Marta y KL ! [aunque parece que he llegado 'un poquito demasiado tarde'...] :D

... ahora funciona tal y como necesito y no sabeis bien de la que me habeis salvado!!!



ahora que las macros ya son 'permitidas'... haz la prueba copiando... [requiere excel 2k ->]
en el modulo de codigo de 'esa' hoja ==Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [c10]) Is Nothing Then [c12].Select: SendKeys "%{Down}"
End Sub

saludos,
hector.
Respuesta Responder a este mensaje
#12 KL
02/06/2005 - 23:11 | Informe spam
Hola HM,

No esta nada mal la idea de invitar a hacer una selecion desplegando la
lista pero que hay de poner el valor por defecto?

Saludos,
KL

"Héctor Miguel" wrote in message
news:%
hola, Marta y KL ! [aunque parece que he llegado 'un poquito demasiado
tarde'...] :D

... ahora funciona tal y como necesito y no sabeis bien de la que me
habeis salvado!!!



ahora que las macros ya son 'permitidas'... haz la prueba copiando...
[requiere excel 2k ->]
en el modulo de codigo de 'esa' hoja ==> Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [c10]) Is Nothing Then [c12].Select: SendKeys
"%{Down}"
End Sub

saludos,
hector.

Respuesta Responder a este mensaje
#13 Héctor Miguel
02/06/2005 - 23:40 | Informe spam
hola, KL !

No esta nada mal la idea de invitar a hacer una selecion desplegando la lista pero que hay de poner el valor por defecto?



[probablemente lo has olvidado, asi que 'me permito' recordarte que...]
-> al usar instrucciones del tipo If..ElseIf...Else...End If [etc. etc. etc.]
la forma mas 'sencilla' [y a la vez mas que 'amigable'] es:
If <condicion> Then <resultado> [asi de 'simple y llana'] ya que 'permite' que:
[si <condicion> se cumple] puedes 'continuar/alargar/agregar/... la instruccion con 'nuevas'/mas instrucciones -> -> -> ->...
la unica 'condicion' es que sigan TODAS EN LA MISMA LINEA [de codigo]...
con la que puedes 'cumplir' si utilizas dos puntos y un espacio ->: <- para 'separar' cada 'siguiente instruccion'
[que se 'reconoce' como 'salto de linea' en vba] es decir...
-> si lo que necesitaras fuera [p.e. y en caso de que la condicion se cumpla]...
1) borrar el contenido de la celda en cuestion [o establecer un 'valor por defecto', o... -???-]
2) seleccionar la celda en cuestion [para posteriormente 'poder']
3) desplegar la lista [en caso de la validacion de la celda en cuestion]
-> puedes 'instruir' todo esto en una sola linea de codigo +/- como sigue...
If Not Intersect(Target, [c10]) Is Nothing Then [c12].ClearContents: [c12].Select: SendKeys "%{Down}"
-> aunque NO TODO 'funciona' PARA TODO... en este [preciso] 'caso' resulta bastante conveniente?, amigable? ... ;)

saludos,
hector.
Respuesta Responder a este mensaje
#14 KL
03/06/2005 - 00:32 | Informe spam
Hola HM!!!

[probablemente lo has olvidado...



No lo diras en serio, ?verdad?

De todas maneras, hay tres cosas de las que no me habia olvidado:

1) la tarea planteada por Marta era la de dejar C12 vacia por defecto
2) que Marta no sabia nada de VBA y probablemente no sabria modificar el
codigo ella sola como para anadir la instruccion Range("A12")="" (que por
cierto no es mas largo ni menos eficiente que [c12].ClearContents) y aun
precedida por los dos puntos :-o
3) que la solucion corria prisa y no habia tiempo para estar optimizando el
codigo

...?y tu? ?no lo habras olvidado?

Saludos,
KL
Respuesta Responder a este mensaje
#15 Héctor Miguel
03/06/2005 - 01:16 | Informe spam
hola, KL !

... tres cosas de las que no me habia olvidado:
1) la tarea planteada por Marta era la de dejar C12 vacia por defecto



=> si revisas con -mas- cuidado el primer mensaje de este hilo... 'veras' que OP 'solicita' [parte final]...
"... necesitaria que al cambiar el primero automaticamente, o bien el segundo se quedara en blanco
o bien al desplegar el segundo aparecieran solo las opciones de la categoria del primero..."
=> la primera opcion solicitada ['...en blanco...' y ahora con macros 'permitidas'] se la 'proveiste' tu ;)
yo [solamente] le 'ofreci' la opcion para que el segundo caso fuera de manera 'automatica' :D
-> si suponemos que 'tomo provecho' de la 'sugerencia' de los formatos condicionales...
la 'alerta visual' de que el segundo dato NO es 'coincidente' con su 'origen'... [ya estaba 'dada'] ;)

2) que Marta no sabia nada de VBA y probablemente no sabria modificar... para anadir... Range("A12")=""
(que por cierto no es mas largo ni menos eficiente que [c12].ClearContents) y aun precedida por los dos puntos :-o
3) que la solucion corria prisa y no habia tiempo para estar optimizando el codigo



=> 'entiendo' que Marta no ha desarrollado 'habilidades' en vba [creo que 'asi' empezamos todos no?]
'entiendo' que habia 'prisa' [por solucionar una situacion... por lo del codigo... -lo dejamos en 'stand-by'?-]
'entiendo' que [por lo anterior] no habia tiempo [para las explicaciones de las propuestas]
'supongo' [o 'esperaria'] que la solicitud por las explicaciones [o mas/dudas]... 'vendria despues' -?-
[por eso 'anticipe' en mi mensaje: "aunque parece que he llegado 'un poquito demasiado tarde'..."] ;)
=> por lo tocante a si mas corto/largo/'eficiente' [o no] etc. etc. etc. [y que conste que 'yo siento' que es... 'obsesivo'] :))
[y tal como menciono en el anterior: "...NO TODO ... PARA TODO..."]
[creo que] 'depende' de cada uno el 'tomar/combinar/...' [o no] las diferentes [y nuevas] 'aportaciones' de las propuestas ;)
-> p.e. que te parece... [c2] = "" ??? [partes de] una 'sugerencia' mia y otra tuya ;)
[repito]... es probable que... 'las explicaciones'... vendran 'a su tiempo' ;)

saludos,
hector.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida