¿Cómo rellenar un cuadro combinado con datos de un rango con nombre en Excel?
Puede especificar un cuadro combinado (Control ActiveX) con los datos de un rango determinado agregando el rango a las propiedades ListFillRange del cuadro combinado. Pero, ¿sabe cómo rellenar un cuadro combinado con datos de un rango con nombre en Excel? Por ejemplo, ha nombrado un rango de celdas en su hoja de trabajo y ahora necesita especificar este nombre de rango en un cuadro combinado. Al seleccionar el nombre del rango en un cuadro combinado, todos los valores de las celdas en este rango con nombre se rellenarán automáticamente en otro cuadro combinado. Este artículo presentará un método VBA para resolver este problema.
Rellenar un cuadro combinado con datos de un rango con nombre mediante código VBA
Rellenar un cuadro combinado con datos de un rango con nombre mediante código VBA
Por favor, siga los siguientes pasos para rellenar un cuadro combinado con datos de un rango con nombre en Excel.
1. Seleccione todos los encabezados (en este caso, selecciono A1:E1) en su hoja de trabajo y luego escriba un nombre en el Cuadro de nombres como se muestra en la siguiente captura de pantalla.
2. Seleccione los datos de cada columna excepto su encabezado y luego asigne un nombre a la columna por separado en el Cuadro de nombres. Ver captura de pantalla:
En este caso, nombré los rangos A2:A8, B2:B8, C2:C8, D2:D8 y E2:E8 como Fecha, Tienda, Artículos, Ventas y Día de la semana respectivamente.
3. Luego inserte un cuadro combinado haciendo clic en Desarrollador > Insertar > Cuadro combinado (Control ActiveX). Ver captura de pantalla:
4. Repita el paso 3 para insertar otro cuadro combinado en la hoja de trabajo.
5. Haga clic derecho en la pestaña de la hoja y luego haga clic en Ver código en el menú contextual. Ver captura de pantalla:
6. En la ventana abierta de Microsoft Visual Basic para Aplicaciones, copie y pegue el siguiente código VBA en la ventana de Código.
Código VBA: Rellenar un cuadro combinado con datos de un rango con nombre
Private Sub ComboBox1_Change()
'Updated by Extendoffice 2018/1/30
Dim xRg As Range
Set xRg = Range(Me.ComboBox1.Text)
Me.ComboBox2.List = Application.WorksheetFunction.Transpose(xRg)
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim xRg As Range
Set xRg = Range("Headers")
Me.ComboBox1.List = Application.WorksheetFunction.Transpose(xRg)
End Sub
Nota: En el código, ComboBox1 es el nombre del cuadro combinado donde se enumerarán todos los nombres de rango, y ComboBox2 es el nombre del cuadro combinado donde se rellenarán los datos del rango con nombre especificado. “Encabezados” es el nombre del rango que creó en el paso 1.
7. Desactive el Modo Diseño haciendo clic en Desarrollador > Modo Diseño.
8. Haga clic en cualquier celda de la hoja de trabajo para activar el código. Haga clic en el botón de flecha en el primer cuadro combinado, puede ver que todos los rangos con nombre están listados dentro. Ver captura de pantalla:
Al seleccionar un rango con nombre en el primer cuadro combinado, los datos de las celdas correspondientes se rellenarán en el segundo cuadro combinado como se muestra en la siguiente captura de pantalla:
Crear fácilmente una lista desplegable con casillas de verificación en Excel:
El Lista desplegable con casillas de verificación utilidad de Kutools para Excel puede ayudarlo a crear fácilmente una lista desplegable con casillas de verificación en un rango especificado, hoja de trabajo actual, libro de trabajo actual o todos los libros de trabajo abiertos según sus necesidades.
¡Descárguelo y pruébelo ahora! (30-días de prueba gratuita)
Artículos relacionados:
- ¿Cómo copiar el valor del cuadro combinado a la celda activa en Excel?
- ¿Cómo mostrar el formato de fecha en la salida del cuadro combinado en Excel?
- ¿Cómo evitar o deshabilitar la escritura en un cuadro combinado en Excel?
- ¿Cómo rellenar un cuadro combinado con datos específicos al abrir el libro de trabajo?
- ¿Cómo rellenar automáticamente otras celdas al seleccionar valores en una lista desplegable de Excel?
Las mejores herramientas de productividad para Office
Potencia tus habilidades en Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...
Office Tab lleva la interfaz de pestañas a Office y facilita mucho tu trabajo
- Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abre y crea varios documentos en nuevas pestañas de la misma ventana, en lugar de nuevas ventanas.
- ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!