Un combo es un control de formulario que combina un campo de texto con una lista desplegable. En este tutorial, que funciona en Excel 2007 y posteriores, lo usaremos en la hoja Pedidos de una cafetería para registrar categorías como Bebidas, Comidas y Postres.
Al terminar, podrás insertar un combo, escribir sus valores, conectarlo con un rango de celdas y vincularlo con una celda mediante una macro de VBA. Los datos y pasos de este artículo están comprobados en octubre de 2026.
Qué es un combo en Excel y cuándo usarlo
Un combo es un control que muestra un valor escrito y permite elegir otro de una lista desplegable. A diferencia de una celda con validación de datos, el combo es un objeto visible que puede colocarse y dimensionarse libremente sobre la hoja.
En nuestro libro, la hoja Pedidos registra pedidos de una cafetería. Añadiremos un combo junto a la columna Categoría para que cada pedido use una categoría consistente: Bebidas, Comidas o Postres.
Por ejemplo, en H2 podemos colocar el combo. Al pulsar su flecha, aparecerán las tres categorías. El texto que se escriba directamente también puede quedar en el control, por lo que conviene definir previamente las opciones permitidas.
El combo es útil cuando:
- quieres una lista visible junto a los datos;
- necesitas distinguirla visualmente de una celda normal;
- vas a conectar sus opciones con un rango que puede cambiar;
- necesitas copiar el valor seleccionado a otra celda.
Dónde está el combo en la cinta de opciones
El combo se inserta desde la pestaña Insertar, dentro del grupo Controles. En Excel 2007 y posteriores, la herramienta se llama Cuadro combinado.
Al seleccionarla, Excel entra en modo de diseño: puedes dibujar el control en la hoja arrastrando desde una esquina hasta la otra. Cuando termines, vuelve a hacer clic en cualquier celda para salir de ese modo.
Si no aparece inmediatamente, comprueba que estás en la pestaña Insertar y que el grupo Controles está visible. En versiones recientes, Excel puede mostrar distintos controles según el tipo de archivo y la plataforma.
Insertar un combo y escribir su lista
En la hoja Pedidos, selecciona H2 y dibuja el combo a su derecha, con un tamaño aproximado de 140 píxeles de ancho y 25 de alto. Después, abre sus propiedades y escribe las categorías en Elementos de lista.
| A | B | C | D | E | F | G | H | |
|---|---|---|---|---|---|---|---|---|
| 1 | Pedido | Cliente | Producto | Cantidad | Precio | Total | Categoría | Selección |
| 2 | P-001 | Ana | Café | 2 | 1,50 | 3,00 | ||
| 3 | P-002 | Luis | Tarta | 1 | 4,20 | 4,20 | ||
| 4 | P-003 | Sara | Zumo | 3 | 1,20 | 3,60 |
- Selecciona la pestaña Insertar.
- En el grupo Controles, selecciona Insertar > Cuadro combinado.
- Arrastra sobre las celdas H2:I2 para dibujar el control.
- Haz clic derecho sobre el combo y selecciona Formato de control.
- En la pestaña Control, busca el campo Elementos de lista.
- Escribe
Bebidas, pulsa Ctrl+Enter y añadeComidasyPostres, cada uno en una línea. - Acepta los cambios y ajusta el ancho para que se vean completo el texto y la flecha.
Bebidas
Comidas
Postres
Conectar el combo con una lista de la hoja
En lugar de escribir valores fijos, conectamos el combo con las categorías de Categorías. Así, si el negocio añade una categoría, basta con incorporarla al rango y actualizar la lista.
- En la hoja Pedidos, escribe
Bebidasen F2,Comidasen F3 yPostresen F4. - Selecciona el combo de H2.
- Haz clic derecho sobre él y selecciona Formato de control.
- En la pestaña Control, escribe
$F$2:$F$4en Intervalo de celdas. - Acepta y prueba la flecha del combo.
| A | B | C | D | E | F | G | H | I | |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Pedido | Cliente | Producto | Cantidad | Precio | Total | Categoría | Selección | |
| 2 | P-001 | Ana | Café | 2 | 1,50 | 3,00 | Bebidas | ||
| 3 | P-002 | Luis | Tarta | 1 | 4,20 | 4,20 | Comidas | ||
| 4 | P-003 | Sara | Zumo | 3 | 1,20 | 3,60 | Postres |
Las referencias absolutas no cambian si.draw el control o copias el archivo. Si el rango se desplaza, utiliza las referencias mixtas =$F2:$F4.
Delicias, vuelve a abrir la lista y you'll ver «Delicias» en lugar de «Postres».Usar celdas vacías o encabezados en el rango
El intervalo debe contener solo las categorías que quieres ofrecer. Si incluyes un encabezado, también aparecerá como opción.
| A | B | C | D | E | F | G | H | I | |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Pedido | Cliente | Producto | Cantidad | Precio | Total | Categoría | Selección | |
| 2 | P-001 | Ana | Café | 2 | 1,50 | 3,00 | Bebidas | ||
| 3 | P-002 | Luis | Tarta | 1 | 4,20 | 4,20 | Comidas | ||
| 4 | P-003 | Sara | Zumo | 3 | 1,20 | 3,60 | Postres |
- Con
$F$1:$F$4, la lista incluye Categoría, Bebidas, Comidas y Postres. - Con
$F$2:$F$4, solo incluye Bebidas, Comidas y Postres. - Si F3 está vacía, esa celda también puede aparecer como una opción en blanco.
Vincular el combo con una celda mediante macros
Para registrar automáticamente la categoría seleccionada, vinculamos el combo con H2 mediante VBA. La macro copia el valor visible del control a la celda H2.
Primero, guarda el libro como Libro de Excel habilitado para macros (.xlsm). Después, abre el editor con Alt+F11, inserta un módulo y pega este código:
Sub CopiarCategoriaSeleccionada()
Dim combo As Object
Set combo = ActiveSheet.Shapes("Cuadro combinado 1").ControlFormat
If Len(Trim(combo.Value)) = 0 Then
ActiveSheet.Range("H2").Value = ""
Else
ActiveSheet.Range("H2").Value = combo.Value
End If
End Sub
Cuadro combinado 1 debe coincidir con el nombre real del control. Si Excel le ha asignado otro nombre, abre Formato de control > Propiedades y anótalo.Para ejecutar la macro:
- Selecciona el combo.
- Abre Vista > Macros.
- Elige
CopiarCategoriaSeleccionada. - Pulsa Ejecutar.
La categoría seleccionada se copió en H2.
Para que la macro sea más útil, puedes ejecutarla después de cada cambio mediante un botón, o integrarla en el flujo de registro de pedidos.
Sub RegistrarPedido()
Dim combo As Object
Set combo = ActiveSheet.Shapes("Cuadro combinado 1").ControlFormat
If Len(Trim(combo.Value)) = 0 Then
MsgBox "Elige una categoría."
Exit Sub
End If
ActiveSheet.Range("H2").Value = combo.Value
MsgBox "Categoría registrada."
End Sub
La salida aparece en un cuadro de diálogo:
Categoría registrada.
CopiarCategoriaSeleccionada y comprueba que H2 muestra exactamente Comidas.Guardar el libro con la macro de forma compatible
Los archivos .xlsx no conservan macros. Si guardas el libro como .xlsx, Excel puede quitar el código VBA o mostrar una advertencia al cambiar el tipo de archivo.
- Selecciona Archivo > Guardar como.
- Elige un tipo de libro que permita macros.
- Selecciona *Libro de Excel habilitado para macros (.xlsm)**.
- Confirma el nombre y la ubicación.
- Cierra y vuelve a abrir el archivo para comprobar el vínculo.
.xlsx si no necesita macros. Para conservar el automatismo VBA del tutorial, utiliza .xlsm..xlsm, el combo continúa mostrando F2:F4 y la macro aparece en Vista > Macros.Por qué el combo no muestra la lista o no se vincula
El intervalo contiene una referencia incorrecta
Si el combo está vacío, revisa Intervalo de celdas. Puede contener una ruta inexistente, un signo = incorrecto o referencias que ya no corresponden a la hoja.
Abre Formato de control y vuelve a escribir el intervalo:
=$F$2:$F$4
Después, comprueba que el control está en modo de diseño. Si no puedes abrir sus propiedades, intenta seleccionarlo una vez; que no responda la primera pulsación no significa que esté roto.
Las celdas de origen están en otra hoja
El intervalo puede apuntar a otra hoja si está escrito correctamente, pero resulta más sencillo mantener la tabla de categorías en Pedidos. Si la fuente está oculta, los usuarios quizá no puedan comprobarla.
Revisa también que las celdas no estén vacías. Una celda vacía dentro del rango puede aparecer como una opción en blanco.
El control está en modo diseño
En modo diseño puedes mover y redimensionar el combo, pero no seleccionarlo con normalidad para escribir o elegir un valor. Pulsa una celda fuera del control para salir de ese modo y prueba la flecha.
La macro encuentra un nombre de control diferente
Si aparece el error No se ha encontrado el control Cuadro combinado 1, el objeto no tiene ese nombre. En Formato de control > Propiedades, consulta Nombre de objeto y sustituye ese nombre en la macro.
Si el libro se guardó como .xlsx, guarda una copia como .xlsm antes de ejecutar el código.
Qué versiones y límites debes tener en cuenta
El cuadro combinado como control de formulario está disponible en Excel 2007 y posteriores. En Excel para la web y en Excel para la móvil puede no estar disponible. Excel para Mac utiliza el control disponible en su versión concreta, y la presentación de las propiedades puede variar ligeramente.
La versión de Excel no es el único límite: el tamaño del control debe permitir leer sus opciones y el rango de origen debe contener valores válidos. Si el libro cambia de equipo, comprueba que el combo y su intervalo siguen vinculados.
Para un libro sin macros, un cuadro combinado sigue siendo una forma de objeto: puede insertarse y asignarse a un intervalo, pero el diseño debe guardarse en un archivo compatible. Los controles de formulario se comportement differently de los controles de contenido ActiveX.
Para más información sobre los controles de formulario, consulta la ayuda oficial de Excel sobre los controles de formulario.
Lo que ya sabes hacer con un combo en Excel
- Reconoces un combo como un control que combina un campo de texto y una lista desplegable.
- Lo insertas desde Insertar > Controles > Insertar > Cuadro combinado.
- Configuras valores fijos en Elementos de lista.
- Conectas las opciones con un rango como
$F$2:$F$4. - Evitas encabezados, celdas vacías y referencias incorrectas.
- Vinculas la selección con H2 mediante VBA.
- Guardas el libro como
.xlsmcuando necesitas conservar macros. - Diagnosticas fallos de intervalo, hojas ocultas y modo diseño.
Tu libro Pedidos ya contiene un combo vinculado a la lista de categorías y una macro que registra la selección. El siguiente paso es asignar un botón a RegistrarPedido para que la macro pueda ejecutarse con un solo clic.
Para deepen el uso de VBA, revisa la documentación oficial de Microsoft sobre cómo empezar con VBA en Office.
Fuentes
- MicrosoftCrear una lista desplegable – Microsoft Office Supportconsultado el 28/10/2026
- MicrosoftEl editor de VBA y la primera macro — documentación oficialconsultado el 28/10/2026
- MicrosoftAtajos que funcionan igual en cualquier idioma — documentación oficialconsultado el 28/10/2026