Como llamar desde un userform múltiples sub rutina desde un combobox desde un solo ''case''.

Soy nuevo en el foro. Mi problema es el siguiente. Tengo dos combobox1 y combobox2. El primer combobox tienes tres opciones al seleccionar una me presenta una serie de opciones en el combobox2. El problema es que las opciones del combobox son subrutinas, serian 3 diferentes y no logro que funcione.

2 Respuestas

Respuesta
1

Gracias Elsa por responder aquí te paso el código para que se entienda lo que quiero hacer

Private Sub UserForm_Initialize()

With combobox1
.AddItem "PLYFORM CLASS I"
.AddItem "PLYFORM CLASS II"
.AddItem "PLYFORM CLASS III"

End With

End Sub

Private Sub combobox1_Click()
Dim Texto As String
Texto = combobox1.text
combobox2.Clear
Select Case Texto
Case Is = "PLYFORM CLASS I"
combobox2.AddItem "a(15/32)X12"
Case Is = "PLYFORM CLASS II"
combobox2.AddItem "b(15/32)X12"
Case Is = "PLYFORM CLASS III"
combobox2.AddItem "c(15/32)X12"
End Select
End Sub

En la parte siguiente es donde quiero poner la selección de las tres subrutinas dependiendo de la selección del primer combobox.

Select Case combobox2.ListIndex 
Case -1
Exit Sub

Case 0: call     subrutina 

End Select

Unload Me

End Sub

Respuesta
1

Debieras dejar escrito aquí el código que ya tenés para cada combobox.

¿Dices qué las 'opciones del combobox' son subrutinas... pero de qué combo hablas?

Está poco claro, agrega algún código y las aclaraciones para poder seguir.

Espero que así cómo votas positivamente 'tu' respuesta también votes luego la mía ;)

Si entendí bien, necesitas que al seleccionar algún item en combobox1 se agreguen datos al combobox2... pero como estás evaluando qué seleccionaste del combo1 solo envías un valor al combo2... algo no está bien con eso.

De todos modos, si lo que necesitas es la instrucción para llamar a una macro según lo que se seleccione en el combo1 (¿o 2?) Estas son las líneas (ajusta el nombre de tus macros):

Private Sub combobox1_Click()
Dim Texto As String
Texto = ComboBox1.Text
ComboBox2.Clear
Select Case Texto
Case Is = "PLYFORM CLASS I"
    Application. Run "macro01" 'coloca el nombre de tu macro 
    ComboBox2. AddItem "a(15/32)X12" 'solo se agrega este dato al combo2
Case Is = "PLYFORM CLASS II"
    ComboBox2. AddItem "b(15/32)X12"
    Application. Run "macro02" 'coloca el nombre de tu macro
Case Is = "PLYFORM CLASS III"
    ComboBox2. AddItem "c(15/32)X12"
    Application. Run "macro03" 'coloca el nombre de tu macro
End Select
End Sub

Sdos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas