Skip to main content

¿Cómo rellenar un cuadro de texto basado en la selección de un cuadro combinado en un UserForm en Excel?

Author: Siluvia Last Modified: 2025-06-04

Supongamos que tienes una tabla que contiene una columna de Nombre y otra de Número de empleado, como se muestra en la siguiente captura de pantalla. Ahora necesitas crear un UserForm con un cuadro combinado que recoja todos los nombres y un cuadro de texto que muestre el número de empleado correspondiente al seleccionar un nombre del cuadro combinado. El método descrito en este artículo puede ayudarte a lograrlo.

A screenshot showing a table with Name and Staff Number columns in Excel

Rellenar un cuadro de texto basado en la selección de un cuadro combinado en un UserForm con VBA


Rellenar un cuadro de texto basado en la selección de un cuadro combinado en un UserForm con VBA

Por favor, sigue los siguientes pasos para rellenar el cuadro de texto con el valor correspondiente según la selección del cuadro combinado en el UserForm.

1. Presiona las teclas Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.

2. En la ventana de Microsoft Visual Basic para Aplicaciones, haz clic en Insertar > UserForm. Ver captura de pantalla:

A screenshot showing how to insert a UserForm in Excel VBA

3. Luego, inserta un control de cuadro combinado y un control de cuadro de texto en el UserForm creado, como se muestra en la siguiente captura de pantalla.

A screenshot of a UserForm in Excel with a ComboBox and TextBox added

4. Haz clic derecho en cualquier espacio en blanco del UserForm y luego haz clic en Ver Código en el menú contextual. Ver captura de pantalla:

A screenshot showing how to open the code window for the UserForm in Excel VBA

5. En la ventana de código del UserForm que se abre, copia y pega el siguiente código VBA para reemplazar el original.

Código VBA: Rellenar un cuadro de texto basado en la selección de un cuadro combinado en un UserForm

Dim xRg As Range
'Updated by Extendoffice 2018/1/30
Private Sub UserForm_Initialize()
    Set xRg = Worksheets("Sheet5").Range("A2:B8")
    Me.ComboBox1.List = xRg.Columns(1).Value
End Sub
Private Sub ComboBox1_Change()
    Me.TextBox1.Text = Application.WorksheetFunction.VLookup(Me.ComboBox1.Value, xRg, 2, False)
End Sub

Nota: En el código, A2:B2 es el rango que contiene los valores que se mostrarán por separado tanto en el cuadro combinado como en el cuadro de texto del UserForm. Y Sheet5 es el nombre de la hoja de cálculo que contiene el rango de datos. Por favor, cámbialos según sea necesario.

6. Presiona las teclas Alt + Q para salir de la ventana de Microsoft Visual Basic para Aplicaciones.

7. Haz clic en Desarrollador > Insertar > Botón de Comando (Control ActiveX) para insertar un botón de comando en la hoja de trabajo.

8. Haz clic derecho en la pestaña de la hoja y selecciona Ver Código desde el menú contextual. Luego, copia y pega el código VBA en la ventana de código.

Código VBA: Mostrar UserForm

Private Sub CommandButton1_Click()
'Updated by Extendoffice 2018/1/30
    UserForm1.Show
End Sub

9. Desactiva el Modo Diseño en el libro.

Haz clic en el botón de comando para abrir el UserForm especificado. Luego puedes ver que todos los nombres están recopilados en el cuadro combinado. Al seleccionar un nombre del cuadro combinado, el número de empleado correspondiente se rellenará automáticamente en el cuadro de texto, como se muestra en la siguiente captura de pantalla.

A screenshot showing the UserForm with ComboBox selection populating the TextBox in Excel


Artículos relacionados:

Las mejores herramientas de productividad para Office

🤖 Kutools AI Aide: Revoluciona el análisis de datos basado en: Ejecución inteligente | Generar código | Crear fórmulas personalizadas | Analizar datos y generar gráficos | Invocar Funciones mejoradas
Funciones populares: Buscar, resaltar o marcar duplicados | Eliminar filas en blanco | Combinar columnas o celdas sin perder datos | Redondear...
Super BUSCARV: Búsqueda por varios criterios | Búsqueda de varios valores | Búsqueda en varias hojas | Coincidencia difusa....
Lista desplegable avanzada: Crea rápidamente una lista desplegable | Lista desplegable dependiente | Lista desplegable de selección múltiple....
Administrador de columnas: Agregar un número específico de columnas | Mover columnas | Alternar el estado de visibilidad de columnas ocultas | Comparar rangos y columnas...
Funciones destacadas: Cuadrícula de enfoque | Vista de diseño | Barra de fórmulas mejorada | Administrador de Libro de trabajo y Hoja de cálculo | Biblioteca de AutoTexto | Selector de fechas | Combinar Datos | Cifrar/Descifrar celdas | Enviar correo electrónico por lista | Super Filtro | Filtro especial (filtrar celdas con fuente en negrita/cursiva/tachado...)...
Top15 conjuntos de herramientas:12 herramientas de texto (Agregar texto, Eliminar caracteres específicos, ...) | Más de50 tipos de gráficos (Diagrama de Gantt, ...) | Más de40 fórmulas prácticas (Calcular edad basada en la fecha de nacimiento, ...) |19 herramientas de inserción (Insertar código QR, Insertar imagen desde ruta, ...) |12 herramientas de conversión (Convertir a palabras, Conversión de moneda, ...) |7 herramientas para combinar y dividir (Combinar filas avanzado, Dividir celdas, ...) | ... y más

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!