Formularios

Controles de formulario en Excel: qué son y cómo insertarlos

noviembre 4, 2026 Tuto Excel 14 min read
Controles de formulario en Excel: qué son y cómo insertarlos

Imagina una hoja con 20 articulos en un inventario y en vez de escribir el producto a buscar, lo eliges de un cuadro desplegable o mueves una barra hasta el articulo 15 sin teclear nada. Eso es lo que hacen los controles de formulario en Excel: pequenos botones, listas y barras que viven encima de la hoja y que el lector toca para cambiar lo que ve sin escribir formulas. Al terminar este tutorial sabras colocar un cuadro de lista, un cuadro combinado, un boton de numero y una barra de desplazamiento, y leer lo que elijan con una sola formula. Los controles de formulario estan en Excel desde la version 5.0 (1993) y siguen disponibles en Microsoft 365, Excel 2024, 2021, 2019, 2016, 2013, 2010 y 2007, ademas de Excel para Mac. En Excel para la web faltan algunos controles y los que existen solo se insertan desde la version de escritorio.

Nota: En este articulo las formulas se escriben con el nombre en espanol y los argumentos separados por punto y coma, el separador habitual en Excel configurado con coma como decimal. Si tu Excel usa el punto como decimal (Mexico, Estados Unidos), el separador sera la coma: =SUMA(B2,C2) en lugar de =SUMA(B2;C2).

Que son los controles de formulario y para que te sirven

Los controles de formulario son objetos que colocas encima de una hoja y que el lector usa con el raton: listas desplegables, botones, barras, casillas y botones de opcion. Cada control hace una unica cosa y la hace bien: escribir un numero en una celda, escribir la posicion elegida dentro de una lista, o lanzar una macro cuando se pulsa un boton.

En este tutorial el libro sera una hoja de inventario con 20 productos escritos en el rango H1:H20. En vez de escribir el nombre del producto en una celda, el lector lo elige de un cuadro de lista, lo escoge de un cuadro combinado o mueve una barra de desplazamiento hasta el articulo que le interesa. Asi, una misma formula (INDICE) sirve para tres controles distintos y la hoja se convierte en un pequeno formulario donde todo se elige sin teclear.

La idea detras de los controles es separar lo que el usuario toca (el control) de lo que la formula necesita (el dato). El control vive en una capa flotante y la celda vinculada es el puente: el control escribe ahi un numero y la formula INDICE lo traduce al producto correspondiente.

Donde estan y como se activa la pestana que los contiene

Los controles viven en la pestana Programador (en Mac y en la web puede llamarse Desarrollador). Esa pestana no sale por defecto, asi que el primer paso es activarla.

Pasos numerados:

  1. Abre Excel y ve a Archivo > Opciones > Personalizar cinta de opciones.
  2. En la columna derecha, Pestanas principales, busca Programador y marca su casilla.
  3. Pulsa Aceptar.
  4. Comprueba que la pestana Programador aparece a la derecha de la cinta, junto a Vista.
ArchivoOpcionesPersonalizar cinta de opciones
Nota: En Mac la ruta es Excel > Preferencias > Cinta y barra de herramientas > Personalizar cinta > Desarrollador. En Excel para la web la pestana Desarrollador se activa desde el icono de engranaje > Excel Options > Customize Ribbon.

El boton Insertar y los dos grupos de controles

En Programador > Controles > Insertar aparecen dos grupos: Controles de formulario (los de este tutorial) y Controles ActiveX (mas complejos, requieren VBA y no funcionan en Excel para la web ni en Mac del mismo modo). Los de formulario se configuran con el cuadro Formato de control, al que se llega con clic derecho sobre el control.

ProgramadorControlesInsertar

Cuadro de lista: una lista visible de la que eliges un elemento

El cuadro de lista muestra varios elementos a la vez dentro de un rectangulo: el lector ve toda la lista y hace clic en el que quiere. Es ideal cuando la lista es pequena (hasta unos 30 elementos) y quieres que el usuario vea todas las opciones sin desplegar nada.

Su cuadro Formato de control tiene tres campos clave:

  • Rango de entrada: la lista de donde el control lee los elementos (en el tutorial, H1:H20).
  • Vincular a la celda: la celda donde el control escribe la posicion del elemento elegido (en el tutorial, G1).
  • Tipo de seleccion: Unica (un solo elemento), Multiple (varios con clic) o Extendida (varios con Ctrl y Mayus). Las opciones Multiple y Extender solo se aprovechan con VBA.

Crear el inventario de 20 productos que alimentara las listas

Lo primero es tener la lista de productos. En la columna H, desde H1 hasta H20, escribe los 20 articulos del inventario. Seran los mismos que serviran para el cuadro de lista, el cuadro combinado, el boton de numero y la barra de desplazamiento.

Pasos numerados:

  1. Selecciona la celda H1 y escribe Producto.
  2. En H2:H20 escribe, en este orden: Patines de ruedas, VCR, Escritorio, Taza, Coche, Lavadora, Lanzacohetes, Bicicleta, Telefono, Vela, Dulces, Altavoces, Vestido, Manta, Secadora, Guitarra, Disco duro, Juego de herramientas, Sarten y Camara.
  3. Comprueba que tienes 20 productos en H2:H20.
H1fx**Producto**
H
1 Producto
2 Patines de ruedas
3 VCR
4 Escritorio
5 Taza
6 Coche
7 Lavadora
8 Lanzacohetes
9 Bicicleta
10 Telefono
11 Vela
12 Dulces
13 Altavoces
14 Vestido
15 Manta
16 Secadora
17 Guitarra
18 Disco duro
19 Juego de herramientas
20 Sarten
21 Camara
Inventario
Comprueba: La columna H tiene el encabezado en H1 y 20 productos abajo, del 1 al 20. Si faltan filas, agregelas: la lista debe llegar justo hasta H20.

Colocar el cuadro de lista y configurarlo paso a paso

Ahora colocamos el control que permitira elegir un producto de la lista.

Pasos numerados:

  1. Ve a Programador > Controles > Insertar y, en Controles de formulario, elige el icono del cuadro de lista (el rectangulo con varias lineas).
  2. Arrastra en la hoja para que el control ocupe, por ejemplo, B2:E10.
  3. Clic derecho sobre el control y elige Formato de control.
  4. En la pestana Control, rellena: Rango de entrada H1:H20, Vincular a la celda G1, Tipo de seleccion Unica.
  5. Pulsa Aceptar.
  6. Haz clic en un producto de la lista: G1 mostrara 1 para el primer producto, 2 para el segundo, etc.
ProgramadorControlesInsertarControles de formularioCuadro de lista
B2fx[Cuadro de lista: Patines, VCR, Escritorio, Taza, Coche, Lavadora, Lanzacohetes, Bicicleta, Telefono, Vela]
A B C D E F G H
1 Producto
2 [Cuadro de lista: Patines, VCR, Escritorio, Taza, Coche, Lavadora, Lanzacohetes, Bicicleta, Telefono, Vela] Patines de ruedas
10 Vela
Inventario
Comprueba: Al hacer clic en el cuarto producto (Taza) en el cuadro de lista, la celda G1 muestra 4. Si muestra otra cifra, revisa que el rango de entrada es H1:H20 y que la celda de vinculo es G1.

Leer el producto elegido con la funcion INDICE

El control escribe una posicion en G1; la formula INDICE (INDEX en ingles) traduce la posicion al nombre del producto. La lista es el rango, el vinculo es la posicion y la formula une ambas cosas.

Pasos numerados:

  1. Selecciona A1 y escribe la formula =INDICE($H$1:$H$20;$G$1).
  2. Pulsa Entrar.
  3. Haz clic en cualquier producto del cuadro de lista y mira A1: vera el nombre del producto elegido.

=INDICE($H$1:$H$20;$G$1)
A1fx=INDICE($H$1:$H$20;$G$1)
A B C D E F G H
1 Telefono 9 Producto
2 [Cuadro de lista] Patines de ruedas
Inventario
Comprueba: Si en G1 aparece 9 y en A1 aparece Telefono, todo encaja. El patron rango + celda de vinculo + INDICE vale para los cuatro controles de este tutorial.

Cuadro combinado: una lista desplegable que ocupa una sola celda

El cuadro combinado es como el cuadro de lista, pero solo se ve una linea con una flecha: al pulsar la flecha se despliega la lista, se elige un elemento y vuelve a quedar plegado. Ocupa el alto de una sola celda y es ideal para listas dentro de un formulario donde el espacio es justo.

Su cuadro Formato de control tiene los mismos campos que el cuadro de lista, mas Lineas desplegadas (cuantas lineas se ven al abrir la flecha) y la opcion Sombreado 3D, que solo cambia la apariencia.

Cuadro combinado con la misma lista de productos

El cuadro combinado resuelve el mismo problema que el cuadro de lista en menos espacio.

Pasos numerados:

  1. Ve a Programador > Controles > Insertar y elige cuadro combinado (el icono con una flecha hacia abajo).
  2. Arrastra en la hoja para que cubra, por ejemplo, B12:E12.
  3. Clic derecho en Formato de control.
  4. Rellena: Rango de entrada H1:H20, Vincular a la celda G1, Lineas desplegadas 10.
  5. Pulsa Aceptar.
  6. Pulsa la flecha del control y elige un producto: A1 (que sigue con la misma INDICE) mostrara el nombre.
ProgramadorControlesInsertarControles de formularioCuadro combinado
B12fx[Combo v Guitarra ^]
A B C D E F G H
12 Guitarra [Combo v Guitarra ^] 17 Producto
13 Disco duro
Inventario
Comprueba: La formula de A1 (=INDICE($H$1:$H$20;$G$1)) no cambia. Lo que cambia es la celda de vinculo G1: sube o baja segun lo que elijas en cualquiera de los dos controles. Si A1 no se actualiza, asegurate de que ambos controles apuntan a la misma celda ($G$1).

Boton de numero y barra de desplazamiento: moverse por la lista con un valor numerico

El boton de numero y la barra de desplazamiento hacen lo mismo: escriben un numero entero en la celda vinculada, comprendido entre un minimo y un maximo, y suben o bajan con un paso definido. Comparten los campos Valor actual, Valor minimo, Valor maximo, Cambio incremental, Cambio de pagina (solo en la barra) y Vincular a la celda.

Boton de numero que recorre los 20 productos

Pasos numerados:

  1. Ve a Programador > Controles > Insertar > Controles de formulario > Boton de numero.
  2. Arrastra para que cubra B14:B15.
  3. Clic derecho en Formato de control.
  4. Rellena: Valor actual 1, Valor minimo 1, Valor maximo 20, Cambio incremental 1, Vincular a la celda G1.
  5. Pulsa Aceptar.
  6. Pulsa la flecha arriba del boton: G1 sube de 1 a 2; A1 muestra el siguiente producto.
ProgramadorControlesInsertarControles de formularioBoton de numero
B14fx[+]
A B C G H
14 Escritorio [+] 4 Producto
15 [/ -] Escritorio
Inventario
Comprueba: Al llegar a 1 y pulsar abajo, o a 20 y pulsar arriba, el valor no cambia (porque el minimo y el maximo lo bloquean). Si pasa de 20, revisa que el valor maximo del control sea 20.

Barra de desplazamiento con cambio de pagina

La barra de desplazamiento es igual que el boton de numero, pero ademas tiene Cambio de pagina (cuanto suma o resta al hacer clic en la barra, fuera del cuadro), y se puede arrastrar el cuadro para ir a cualquier valor.

Pasos numerados:

  1. Ve a Programador > Controles > Insertar > Controles de formulario > Barra de desplazamiento.
  2. Arrastra para que cubra B17:G17 (un cuarto del ancho de las seis columnas).
  3. Clic derecho en Formato de control.
  4. Rellena: Valor actual 1, Valor minimo 1, Valor maximo 20, Cambio incremental 1, Cambio de pagina 5, Vincular a la celda G1.
  5. Pulsa Aceptar.
  6. Pulsa en la barra fuera del cuadro: G1 salta 5 posiciones (por ejemplo, de 1 a 6).
  7. Arrastra el cuadro hasta el final: A1 muestra el producto 20.
B17fx[====O============]
A B C D E F G H
17 Camara [====O============] 20 Producto
18 Camara
Inventario
Comprueba: La formula =INDICE($H$1:$H$20;$G$1) en A1 sigue mostrando el producto correcto sin tocarla. Es la prueba de que los cuatro controles pueden compartir la misma celda de vinculo.

Otros controles de formulario que completar el cuadro

Ademas de los cuatro controles trabajados, el grupo Controles de formulario tiene cinco mas controles que conviene conocer para completar el cuadro.

Control Sirve para Detalle clave
Boton Ejecuta una macro al pulsarlo. En Formato de control solo tiene el campo Asignar macro.
Casilla Activa o desactiva una opcion; varias casillas a la vez. Escribe VERDADERO o FALSO en la celda vinculada.
Boton de opcion Elige una sola opcion dentro de un grupo. Dos botones de opcion en el mismo Cuadro de grupo son excluyentes.
Cuadro de grupo Agrupa controles visualmente (y logica, en opciones O). Se dibuja primero y los demas controles van encima.
Etiqueta Muestra texto descriptivo estatico. No se puede vincular a celda; es solo visual.
Cuadro de lista Muestra varios elementos a la vez. Visto en el tutorial.
Cuadro combinado Lista desplegable que ocupa una celda. Visto en el tutorial.
Boton de numero Sube o baja un valor entero. Visto en el tutorial.
Barra de desplazamiento Mueve un valor entre minimo y maximo. Visto en el tutorial.
Cuidado: Los Botones solo son utiles si tienen una macro asociada: pulsarlos sin macro no hace nada. Las macros se crean en Alt+F11 (Mac: Opt+F11) y se asocian en Formato de control > Asignar macro.

Por que un control no se comporta como esperabas

Los controles de formulario dan pocos errores, pero los que dan suelen ser siempre los mismos: la celda de vinculo no coincide con la formula, el rango se ha desplazado, o se ha pegado algo encima del control.

INDICE devuelve el producto que no toca

Si G1 marca 3 pero A1 muestra, por ejemplo, VCR (el segundo), lo mas probable es que el vincular a la celda del control apunte a G2 mientras la formula mira $G$1, o que el rango $H$1:$H$20 se haya desplazado al insertar filas por encima. Revisa la formula y fija el rango con dolares: $H$1:$H$20. Si el rango ya no va de H1 a H20, ajusta el Rango de entrada del control.

A1fx=INDICE($H$1:$H$20;$G$1)
A B G H
1 VCR 3 Producto
2 Patines de ruedas
3 VCR
4 Escritorio
Inventario
Cuidado: El error mas comun es escribir H1:H20 sin dolares. Al copiar la formula a otra fila, el rango se mueve y INDICE empieza a leer productos equivocados o devuelve #REF!.

Multi y Extender no se aprovechan sin codigo

Si en el cuadro de lista eliges varios elementos con Ctrl y la celda G1 no recoge nada, el motivo es que las opciones Multiple y Extendida del cuadro Formato de control solo sirven con VBA. En una hoja normal, el vinculo guarda un unico numero: la posicion del primer elemento o del ultimo, segun el caso. Para leer varios elementos hay que programar el evento Change del control en el editor de VBA.

Pegar datos borra o desplaza los controles

Al pegar un rango de celdas encima del area donde esta un control, el control desaparece o se desplaza fuera de la pantalla. La solucion es pegar solo valores con Ctrl+Alt+V > Valores o Pegado especial > Solo valores (Mac: Ctrl+Cmd+V > Valores), y proteger la hoja desde Revisar > Proteger hoja cuando la hoja se vaya a usar como formulario.

Consejo: Antes de proteger la hoja, desbloquea las celdas donde el usuario va a tocar (clic derecho > Formato de celdas > Proteccion > Quitar bloqueo) y deja bloqueado todo lo demas.

Lo que ya sabes hacer con los controles de formulario

  • Tienes activada la pestana Programador y sabes llegar a Insertar > Controles de formulario.
  • Conoces los nueve controles del grupo y para que sirve cada uno.
  • Aplicas el patron rango de entrada + celda de vinculo + formula INDICE para que cuatro controles distintos (cuadro de lista, cuadro combinado, boton de numero y barra de desplazamiento) escriban en la misma celda.
  • Sabes la diferencia entre Controles de formulario y Controles ActiveX: los primeros se montan solos, los segundos requieren VBA.

Siguiente paso: agrupa los cuatro controles en un Cuadro de grupo (esquina B2:H10), añade un quinto Boton con Asignar macro que copie el producto de A1 a otra hoja, y tendras un mini formulario que mueve datos con un clic.

Dudas al usar los controles de formulario

¿Que diferencia hay entre los controles de formulario y los controles ActiveX? Los controles de formulario viven en la hoja y se configuran con un cuadro de dialogo (clic derecho > Formato de control). Los controles ActiveX son objetos mas avanzados: tienen propiedades, eventos y se programan en VBA. Los ActiveX no estan en Excel para la web y en Mac funcionan de forma limitada.

¿Por que mi cuadro de lista no muestra todos los productos? El campo Rango de entrada del cuadro Formato de control apunta a un rango pequeno. Si la lista crece, hay que volver a abrir Formato de control y ampliar el rango, por ejemplo, de H1:H20 a H1:H200.

¿Se pueden copiar los controles a otra hoja? Si. Con Ctrl+C sobre el control seleccionado y Ctrl+V en otra hoja, el control se copia con su configuracion, aunque el vincular a la celda se mantendra como referencia absoluta ($G$1) en la hoja original; ajustalo si hace falta.

¿Que pasa si borro la celda vinculada? El control pasara a estado de error hasta que vuelvas a definir una celda de vinculo en Formato de control. La formula INDICE mostrara #REF! mientras tanto.

¿Los controles funcionan en Excel para la web? Solo los que ya estan insertados en el archivo: la version web no permite insertar controles nuevos, asi que tendras que abrir el libro en la aplicacion de escritorio para anadirlos.

Dudas al usar los controles de formulario en Excel

1. ¿Qué controles de formulario se pueden insertar en Excel y para qué sirve cada uno?

En la pestaña Programador > Insertar > Controles de formulario encontrarás botones, casillas de verificación, botones de opción, cuadros combinados, barras de desplazamiento, cuadros de lista, controles de número y etiquetas de texto. Cada uno responde a una necesidad concreta: las casillas y botones de opción sirven para activar o elegir opciones, el cuadro combinado y la lista para elegir entre valores de un rango, y el botón para lanzar una macro.

2. ¿Dónde está la cinta de opciones en Excel y cómo se muestra la pestaña Programador?

La cinta de opciones es la franja superior de Excel con las pestañas Inicio, Insertar, Datos, Fórmulas, etc. La pestaña Programador viene oculta por defecto; se activa en Archivo > Opciones > Personalizar cinta de opciones, marcando Programador en la columna derecha y pulsando Aceptar para insertar controles de formulario.

Fuentes

  1. MicrosoftExcel y Access — documentación oficialconsultado el 13/10/2026