Combo Box formulario que dependa de otro, lista desde Excel

Tengo un formulario con 2 ComboBox
Mis lista de cargos y nombres se encuentran en una hoja distinta llamada
Listas, y el formulario se ejecuta en una hora que se llama Registro

CBox_1 muestra los cargos
CBox_Personas los nombre asociados a esos cargos

Entonces para no mostrar los 1500 nombres, tengo que armas distintas listas

Encontré varios códigos y el que mejor me funciona es el que adjunto, pero
sólo como un rango fijo (no como nombre rango) y sólo desde la misma Hoja,
lo que necesito es la lista que se muestre en CBox_Personas

Private Sub CBox_1_Change()
If CBox_1 = "" Then
Me.CBox_Personas.Enabled = False
Else
Me.CBox_Personas.Enabled = True
Me.CBox_Personas.Value = ""
Select Case Me.CBox_1
Case "Gerentes":
Me.CBox_Personas.RowSource = l_gerentes

Case Is = "Jefes"
Me.CBox_Personas.RowSource = "D:D"
' me cargar celdas vacias y no debiera pasa eso

Case Else: Me.CBox_Personas.Enabled = False
End Select
End If
End Sub

1 respuesta

Respuesta
1

Según tu ejemplo que tienes en el código, sería algo así:

Private Sub CBox_1_Change()
    If CBox_1 = "" Then
        Me.CBox_Personas.Enabled = False
    Else
        Me.CBox_Personas.Enabled = True
        Me.CBox_Personas.Value = ""
        Select Case Me.CBox_1
            Case "Gerentes"
                Me.CBox_Personas.RowSource = "listas!" & Range("l_gerentes").Address
            Case Is = "Jefes"
                Me.CBox_Personas.RowSource = "listas!" & Range("l_jefes").Address
            Case Else: Me.CBox_Personas.Enabled = False
        End Select
    End If
End Sub

Entiendo que tienes un nombre para los gerentes "l_gerentes", otro nombre para los jefes "l_jefes" y en cada nombre tienes una lista de personas.

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

.

¡Gracias!  Funcionó a la perfección, estoy viendo qué Si las tablas de cargos y personas después les agregamos más cosas tendré q cambiarles la estructura. Veré si lo resuelvo sino volveré a preguntar. Te agradezco nuevamente la gentileza, rapidez y certeza de la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas