¿Cómo crear cuadros de lista dinámicos en cascada en Excel?
Es posible que sepa cómo crear una lista desplegable de validación en cascada en Excel. Sin embargo, ¿cómo crear cuadros de lista dinámicos en cascada en Excel? Este artículo presenta un método VBA para bajarlo.
Cree cuadros de lista dinámicos en cascada con código VBA
Cree cuadros de lista dinámicos en cascada con código VBA
Como se muestra en la captura de pantalla siguiente, debe crear un cuadro de lista principal que contenga los valores únicos de la columna Bebida y mostrar todos los valores correspondientes en el segundo cuadro de lista según la selección en el cuadro de lista principal. El siguiente código VBA te ayuda a lograrlo. Haz lo siguiente.
1. En primer lugar, debe extraer todos los valores únicos de la columna Bebida. Seleccione una celda en blanco, ingrese la fórmula de matriz =IFERROR(INDEX($A$2:$A$11, MATCH(0,COUNTIF($J$1:J1, $A$2:$A$11), 0)),"") en el Barra de formulas, y luego presione el Ctrl + Shift + Participar llave. Luego arrastre el Llene la manija para obtener todos los valores únicos. Ver captura de pantalla:
Note: En la fórmula, $A$2:$A$11 es el rango del que extraerá valores únicos. J1 es la celda de arriba donde se encuentra su fórmula.
Consejo: Si la fórmula es demasiado difícil de recordar y manejar, la Seleccione celdas duplicadas y únicas utilidad de Kutools for Excel será una buena opción para extraer rápidamente todos los valores únicos de una columna.
Seleccione la columna que contiene valores únicos de los que extraerá. Luego habilite la utilidad haciendo clic en Kutools > Seleccione > Seleccione celdas duplicadas y únicas. En la Seleccione celdas duplicadas y únicas cuadro de diálogo, seleccione el Todos únicos (incluidos los primeros duplicados) opción y haga clic en OK botón. Luego, todos los valores únicos se seleccionan en la columna. Cópielos y péguelos en un nuevo lugar. Ver captura de pantalla:
Kutools for Excel: con más de 200 prácticos complementos de Excel, prueba gratuita y sin límite en 60 días. ¡Descarga y prueba gratis ahora!
2. Inserte dos cuadros de lista por separado haciendo clic en Developer > recuadro > Cuadro de lista (control ActiveX). Ver captura de pantalla:
3. Haga clic con el botón derecho en el cuadro de lista principal y seleccione Propiedades desde el menú contextual. En el Propiedades cuadro de diálogo, cambie el (Nombre) campo para Bebidas u otro nombre que necesite, ingrese el rango de celdas que contiene los valores únicos extraídos en el ListFillRango campo y cierre el cuadro de diálogo.
4. Repita el paso 3 para cambiar el segundo cuadro de lista (Nombre) campo a Elemento en el Propiedades caja de diálogo.
5. Haga clic con el botón derecho en la pestaña de la hoja y seleccione Ver código desde el menú contextual. Luego, copie el código VBA a continuación en la ventana Código. Ver captura de pantalla:
Código de VBA: cree cuadros de lista dinámicos en cascada en Excel
Dim xPreStr As String
Private Sub Drink_Click()
'Update by Extendoffice 2018/06/04
Dim I, xRows As Long
Dim xRg As Range
Dim xRegStr As String
Application.ScreenUpdating = False
xRegStr = Me.Drink.Text
Set xRg = Range("A2:A11")
xRows = xRg.Rows.Count
If xRegStr <> xPreStr Then
Me.Item.Clear
'Me.OtherListBoxName.Clear
Set xRg = xRg(1)
For I = 1 To xRows
If xRg.Offset(I - 1).Value = xRegStr Then
Me.Item.AddItem xRg.Offset(I - 1, 1).Value
'Me.OtherListBoxName.AddItem xRg.Offset(I - 1, 2).Value
End If
Next
xPreStr = xRegStr
End If
Application.ScreenUpdating = True
End Sub
Notas: En el código Drink y Item son los nombres de dos cuadros de lista, cámbielos por sus propios nombres.
6. presione el otro + Q llaves para cerrar el Microsoft Visual Basic para aplicaciones ventana.
7. Desactive el modo de diseño haciendo clic en Developer > Modo de diseño.
A partir de ahora, al seleccionar cualquier tipo de bebida como Café en el cuadro de lista principal, todos los elementos de café se mostrarán en el segundo. Seleccionar té o vino solo mostrará los elementos de té o vino en el segundo cuadro de lista. Ver captura de pantalla:
Artículos relacionados:
- ¿Cómo borrar la celda de la lista desplegable dependiente después de seleccionar cambiado en Excel?
- ¿Cómo crear listas desplegables en cascada dependientes en Excel?
- ¿Cómo rellenar automáticamente otras celdas al seleccionar valores en la lista desplegable de Excel?
- ¿Cómo crear un calendario de lista desplegable en Excel?
- H¿Cómo guardar o retener selecciones de cuadros de lista ActiveX en Excel?
Las mejores herramientas de productividad de oficina
Mejore sus habilidades de Excel con Kutools for Excel y experimente la eficiencia como nunca antes. Kutools for Excel ofrece más de 300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haga clic aquí para obtener la función que más necesita...
Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
- ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!