Cómo hacer un gráfico interactivo en Excel
Un gráfico interactivo de Excel usa siempre el mismo patrón: un control escribe la elección en una celda vinculada, unas fórmulas auxiliares leen esa celda y el gráfico dibuja las auxiliares. Para cambiar de serie con una lista: un cuadro combinado (control de formulario) vinculado a H1 y la columna auxiliar =INDICE($B2:$D2;$H$1). Para ocultar una serie con una casilla: =SI($J$1;B2;NOD()). Para filtrar: segmentación de datos sobre una tabla. DataHub Pro crea gráficos interactivos desde tu hoja, para compartir con un enlace, con una cuenta gratuita.
Pruébalo con tu propio archivo → · Actualizado el 1 de noviembre de 2026
Un informe con ingresos, unidades y margen de cuatro regiones son doce gráficos. Con una lista desplegable para la métrica y una segmentación para la región es uno solo, y quien lo mira lo explora en lugar de leerlo. No hace falta VBA ni complementos: los controles de Excel escriben en celdas, las fórmulas leen esas celdas y el gráfico dibuja las fórmulas. Esta guía monta ese patrón paso a paso con cuatro tipos de interacción.
Resumen rápido
Tres capas: datos sin tocar, un control que escribe en una celda vinculada y unas columnas auxiliares que el gráfico dibuja. Lista de métricas: cuadro combinado vinculado a H1 y =INDICE($B2:$D2;$H$1). Casillas: =SI($J$1;B2;NOD()), porque los gráficos de líneas saltan los #N/D. Rangos que crecen: tabla de Excel o =DESREF($B$2;0;0;CONTARA($B:$B)-1;1). Filtros: segmentación de datos. Título: enlazado a una celda con fórmula.
Nota sobre separadores: las fórmulas de esta guía usan el punto y coma (;) para separar argumentos y los nombres de función en español. Según tu configuración regional, Excel puede usar la coma (,) en su lugar; en Excel en inglés los nombres de función también cambian (se indican entre paréntesis la primera vez).
Contenido
1.El patrón de tres capas
Antes de insertar ningún control, conviene tener claro el esquema, porque todo lo demás es una variación de él:
Capa 1, datos. La tabla original, con los meses en filas y las métricas en columnas. Nada interactivo la modifica.
Capa 2, control y celda. Un control de formulario recoge la elección y la escribe en su celda vinculada: un cuadro combinado escribe el número del elemento elegido (1, 2, 3…), una casilla escribe VERDADERO o FALSO.
Capa 3, auxiliares y gráfico. Unas columnas de fórmulas leen la celda vinculada y devuelven exactamente lo que el gráfico debe mostrar. El gráfico apunta a estas columnas, nunca a los datos.
Cuando algo falla, se revisa en ese orden: ¿cambia la celda vinculada al mover el control? ¿Calculan bien las auxiliares? Casi siempre el problema está en una fórmula auxiliar, a la vista en una celda.
2.Prepara los datos
Usaremos doce meses de tres métricas:
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Mes | Ingresos (miles) | Unidades | Margen % |
| 2 | ene 2025 | 112 | 840 | 31 |
| 3 | feb 2025 | 118 | 871 | 32 |
| … | … | … | … | … |
| 13 | dic 2025 | 158 | 1.062 | 36 |
Activa la pestaña Programador (Archivo → Opciones → Personalizar cinta de opciones), porque ahí están los controles de formulario. Usa siempre los controles de formulario, no los ActiveX: funcionan en Windows y Mac y no dan avisos de seguridad.
3.Una lista que cambia la serie
1. En F2:F4 escribe los nombres de las métricas: Ingresos, Unidades, Margen %.
2. Programador → Insertar → Cuadro combinado (control de formulario) y dibújalo junto al gráfico.
3. Clic derecho → Formato de control: Rango de entrada F2:F4 y Vincular con la celda H1. Al elegir “Unidades”, H1 pasa a valer 2.
4. Columna auxiliar en I2, copiada hacia abajo:
=INDICE($B2:$D2;$H$1)
INDICE (INDEX) devuelve de cada fila la columna que diga H1. Con H1 = 2, I2 vale 840, las unidades de enero. Inserta un gráfico de líneas de A2:A13 con I2:I13: al cambiar la lista, cambia el gráfico.
4.Casillas que muestran u ocultan series
Inserta una Casilla (control de formulario) por serie y vincula cada una a su celda (J1 para ingresos). La auxiliar de ingresos pasa a ser:
=SI($J$1;B2;NOD())
Con la casilla marcada, J1 es VERDADERO y la auxiliar copia el dato; desmarcada, cada celda es #N/D y los gráficos de líneas no dibujan nada. Los datos no se borran: al volver a marcar, la serie reaparece. NOD (NA) es la clave: un cero dibujaría una línea pegada al eje.
5.Rangos dinámicos
Para que el gráfico absorba los meses nuevos, convierte los datos en tabla (Ctrl+T): las series que apuntan a columnas de una tabla crecen solas. Sin tabla, un nombre definido con DESREF (OFFSET) hace lo mismo:
=DESREF($B$2;0;0;CONTARA($B:$B)-1;1)
Y para una ventana móvil de los últimos seis meses, controlada por una barra de desplazamiento vinculada a H2: =DESREF($B$1;$H$2;0;6;1). En Microsoft 365, =TOMAR(FILTRAR(B2:B13;B2:B13<>"");-6) devuelve los seis últimos valores sin nombres definidos.
6.Segmentación de datos
Con los datos en una tabla o una tabla dinámica, Insertar → Segmentación de datos añade botones de filtro (por región, por producto) que el gráfico dinámico obedece al instante. Es la opción que funciona también en Excel para la Web, donde los controles de formulario no están disponibles.
7.Título dinámico y acabado
En una celda, por ejemplo K1, escribe =INDICE(F2:F4;H1)&" por mes". Selecciona el título del gráfico, escribe = en la barra de fórmulas y haz clic en K1: el título dirá “Unidades por mes” cuando la lista diga Unidades. Agrupa las columnas auxiliares y ocúltalas, y deja una nota junto a cada celda vinculada (“← aquí escribe la lista”) para que nadie la borre al ordenar la hoja.
Errores comunes
1. El gráfico apunta a los datos, no a las auxiliares. El control cambia la celda, pero el gráfico no se entera. Revisa Seleccionar datos.
2. Ceros en lugar de #N/D. =SI($J$1;B2;0) dibuja una línea en el cero; usa NOD().
3. Controles ActiveX. Se rompen tras actualizaciones de Office y no funcionan en Mac; usa controles de formulario.
4. Excel para la Web. No ejecuta controles de formulario; usa segmentación de datos si el libro se abre en el navegador.
Gráficos interactivos sin fórmulas auxiliares
Sube tu hoja a DataHub Pro y obtén gráficos con listas, filtros y ventanas de tiempo en un minuto, para compartir con un enlace que siempre muestra los datos actuales. Con una cuenta gratuita.
Pruébalo gratis →Referencias y lecturas recomendadas
- Microsoft — Agregar un cuadro de lista o un cuadro combinado a una hoja de cálculo.
- Microsoft — Usar la segmentación de datos para filtrar datos.
- DataHub Pro — Interactive Charts in Excel (versión en inglés).
Preguntas frecuentes
¿Cómo hago un gráfico con lista desplegable en Excel?
=INDICE($B2:$D2;$H$1) y haz el gráfico sobre esa columna: al cambiar la lista, cambia el gráfico.¿Cómo oculto una serie de un gráfico con una casilla?
=SI($J$1;B2;NOD()). Desmarcada, la columna se llena de #N/D y el gráfico de líneas no la dibuja.¿Funcionan los controles de formulario en Excel para la Web?
¿Cómo hago que el gráfico crezca con los datos nuevos?
=DESREF($B$2;0;0;CONTARA($B:$B)-1;1) y úsalo como origen de la serie.