Combobox y checkbox

Espero me puedan ayudar
Tengo un combobox y 6 checkbox quiero que según el checkbox activado me seleccione determinados nombres de una lista en hoja2
Se puede y como o cual es la instrucción me urge
1

1 respuesta

Respuesta
1
Los controles combo y check ¿dónde los tienes en la misma hoja o en un userform?
Aclarame esto.
>Un saludo
>Julio
Los checkbox los tengo en la misma hoja yel combobox la base de donde saco los nombres para el combobox están por ejemplo en la hoja 3 ejemplo checkbox1=nivel medio, checkbox2 = nivelsuperior, checkbox3 = centros de apoyo la base esta dividida en de a4 : a10 = nivel medio, de a7:a36 = nivelsuperior, y así susecibamente como puedo hacer que un solo combobox al seleccionar el checkbox solo me aparezca lo que le corresponde en este caso serioa por ejemplo chexk 1 NM solo los que corresponden ahorita tengo un combobox por cada checkbox se puede encontré una que dice combobox1. rowsource="a4:a10
No hace referencia a la hoja que es lo que me falta por tu atención gracias
La referencia a la hoja sería así:
Combobox1.Rowsource="Hoja3!$A$4:$A$10"
Disculpa algo me falta no se si es en el combobox en el checkbox pongo
if checkbox1.value = true then
ComboBox1.RowSource = "Hoja3!$A$4:$A$10"
end if
Se supone que debo de poner esto en los 6 checkbox haciendo referencia de que celda a que celda corresponde pero no me presenta datos el combobox que estoy haciendo mal por tu ayuda gracias y gracias por responder rapido
He estado repasando tu consulta y me doy cuenta que así no funcionará nunca, te explico, si utilizas CheckBox para elegir el rango de valores con los que llenar tu Combobox se puede dar el caso de que estén marcados 2 ó incluso 3 y eso daría errores en un solo combobox, deberías de cambiar Checkbox por Optionbutton estos controles solo te permiten activar uno si activas otro se desactiva el anterior.
Una vez dibujados los OptionButton(los redonditos) pinchas con el derecho en cada uno y pones este instrucción:
Private Sub OptionButton1_Click()
If OptionButton1.Value = True Then
Call LLENAR_COMBO
End If
End Sub
Private Sub OptionButton2_Click()
If OptionButton2.Value = True Then
Call LLENAR_COMBO
End If
End Sub
Private Sub OptionButton3_Click()
If OptionButton3.Value = True Then
Call LLENAR_COMBO
End If
End Sub
Esto hace lo siguiente si esta activo el botón te redirije a otra macro que estará en un modulo que debes de Insertar y llamar a la macro LLENAR_COMBO.
Pongamos que tienes tus lista de valores en la hoja 3 yo he puesto un ejemplo desde A1 una lista desde B1 otra lista y desde C1 la tercera lista. Bien pues en la macro del modulo pones estas instrucciones, si tu tienes tus listas en otras celdas lo cambias en la macro:
Sub LLENAR_COMBO()
If Hoja1.OptionButton1.Value = True Then
Hoja1.ComboBox1.Clear
Sheets("Hoja3").Select
Range("A1").Select
Do While ActiveCell <> Empty
Hoja1.ComboBox1.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Select
Loop
End If
If Hoja1.OptionButton2.Value = True Then
Hoja1.ComboBox1.Clear
Sheets("Hoja3").Select
Range("B1").Select
Do While ActiveCell <> Empty
Hoja1.ComboBox1.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Select
Loop
End If
If Hoja1.OptionButton3.Value = True Then
Hoja1.ComboBox1.Clear
Sheets("Hoja3").Select
Range("C1").Select
Do While ActiveCell <> Empty
Hoja1.ComboBox1.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Select
Loop
End If
Sheets("Hoja1").Select
End Sub
Cada vez que selecciones un OptionButton se llenara tu combo con la lista que le hayas asignado en la macro.
Espero que te sirva, si es así puntúa y finaliza la consulta, si necesitas alguna aclaración me o dices.
>Un saludo
>Julio
Probé tu fórmula y me da error 1004 me ace referencia a sub llenar_combo()
Range("A1").Select      no se llena el combo que estoy aciendo mal
La macro de LLENAR_COMBO() donde la has puesto, te dije que en un módulo, te explico al pulsar en uno de los optionbutton te llevará a esa macro y se ejecutará, no puede estar en los botones porque te marcará error al cambiar de hoja y rango.
Abres el editor de VBA en las columnas de la izquierda que hay iconos de las hojas pulsas con el derecho y eliges insertar modulo, en la ventana que se abre en blanco pegas el código de la macro LLENAR_COMBO.
Prueba esto y me dices, a mi me funciona perfectamente.
>Un saludo
>Julio
Hola gracias por responder con rapidez me disculpo por no saber lo del modulo pero no sabia como abrirlo ni que era por eso me preguntaba sobre la instrucción sub llenar_combobox yo pensaba que la pura instrucción iba a ir dentrom del botón pero me iquiboque no conozco mucho o casi nada de excel te agradezco tu ayuda ya lo aplique y me abre o muestra los datos solo agregue una cosa aquí Range("C1:C5"). Select 
agregue :c5 y ya me muestra los datos por cada OptionButton pero cuando selecciono por desir un nombre no se queda en el combo  sera que la opcion  clear esta en mal lugar
If Hoja1.OptionButton1.Value = True Then
Hoja1.ComboBox1.Clear
Sheets("Hoja3").Select
Range("A1:A5").Select
Do While ActiveCell <> Empty
Hoja1.ComboBox1.AddItem ActiveCell.Value
ActiveCell.Offset(1, 0).Select
Loop
End If
El combobox queda en blanco
Sera por esto que no se queda en el combo el nombre seleccionado por tu ayuda gracias por ser tan rapido
Vamos a ver claro que limpia el combobox cada vez que pulsas un Optionbutton por la lista se corresponde con otra, si no limpiamos se llena con todas las listas y entonces no funciona como tu quieres. Te explico, (por supuesto deben ser OptionButton y no Checkbox)
Si tu quieres que el combobox se llene con la lista que corresponde al Optionbutton1 activas esa opción, pero si quieres después que se llene con la lista del OptionButton2 primero tendremos que limpiar la lista anterior para que te muestre la lista correspondiente a esa opción.
Espero que sea lo que querías, o eso es lo que explicaste, que con un solo combobox poder llenarlo con lista diferentes en función del Optionbutton que activaras.
>Un saludo
>Julio
De antemano te pido disculpas espero no sacarte de quicio a lo mejor no me he sabido explicar
Las listas según el option button si se muestran cuando abro el combobox si muestra los datos según el optionbuton pero cuando selecciono un nombre no se queda en el combo como como activo esa opción ya lo ice en listfillrange y no linkcell y nada
Por tu ayuda gracias
Nada, no consigo enterderte, yo he dibujado 3 OptionButton y un Combobox en una hoja, en otra hoja he creado 3 listas diferentes y cuando activo el primer Option el Combo tiene su lista correspondiente, desplegó el combo y puedo elegir un valor de la lista sin ningún problema. Como no me pases el archivo para verlo no se que te puede pasar. Si quieres me pones un correo y te solicito el archivo. Si quieres haces la prueba con lo que te he dicho y no toques las propiedades del combobox, veras como funciona perfectamente.
>Un saludo
>Julio
A que correo te envío el archivo gracias
Ponme tu un correo y te pediré el archivo
>Un saludo
>Julio
(xxxxxx) te voy a enviar lo que he echo asta ahorita
Ya te he solicitado el archivo.-
>Un saludo
>Julio

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas