Lección 22 de 37Dashboards en Excel

Controles de formulario para interactividad

Agrega botones, listas y barras de desplazamiento.

15 minutos

Un dashboard estático muestra una sola vista de los datos. Un dashboard interactivo permite a los usuarios explorar, filtrar y descubrir insights por su cuenta. Los controles de formulario de Excel transforman reportes pasivos en herramientas de análisis activas.

Por qué la interactividad importa

Dashboard estático vs interactivo

DASHBOARD ESTÁTICO:
┌─────────────────────────────────┐
│  Ventas por Región: Norte       │
│  [Gráfico fijo de Norte]        │
│                                 │
│  Para ver Sur, necesito crear   │
│  otro dashboard o modificar     │
│  manualmente                    │
└─────────────────────────────────┘

DASHBOARD INTERACTIVO:
┌─────────────────────────────────┐
│  Región: [Norte ▼]              │ ← Control de selección
│  [Gráfico se actualiza solo]    │
│                                 │
│  Un clic para ver cualquier     │
│  región sin modificar nada      │
└─────────────────────────────────┘

Beneficios de la interactividad

Beneficio Impacto
Un solo archivo No necesitas 5 versiones por región
Exploración Usuario descubre insights por su cuenta
Presentaciones Cambias vista en vivo durante reuniones
Mantenimiento Actualizas datos en un solo lugar
Profesionalismo Impresiona a stakeholders

Tipos de controles de formulario

Excel ofrece varios controles en la pestaña Desarrollador > Insertar > Controles de formulario:

┌─────────────────────────────────────────────────────────┐
│  CONTROLES DE FORMULARIO                                │
├─────────────────────────────────────────────────────────┤
│                                                         │
│  [▼] Cuadro combinado    - Selección de lista          │
│      (Combo Box)           desplegable                  │
│                                                         │
│  ┌──┐                                                   │
│  │  │ Cuadro de lista    - Lista visible con           │
│  │  │ (List Box)           selección                    │
│  └──┘                                                   │
│                                                         │
│  [═══●═══] Barra de      - Selección numérica          │
│            desplazamiento   con slider                  │
│            (Scroll Bar)                                 │
│                                                         │
│  ○ Botón de opción       - Una opción de varias        │
│    (Option Button)         (exclusivo)                  │
│                                                         │
│  ☑ Casilla de            - Activar/desactivar          │
│    verificación            (independiente)              │
│    (Check Box)                                          │
│                                                         │
│  [Botón]                 - Ejecutar macro              │
│                                                         │
└─────────────────────────────────────────────────────────┘

Habilitar la pestaña Desarrollador

Si no ves la pestaña Desarrollador:

  1. Archivo > Opciones
  2. Personalizar cinta de opciones
  3. En la lista derecha, marca Desarrollador
  4. Aceptar

Cuadro combinado (Combo Box)

El control más versátil. Permite seleccionar un elemento de una lista desplegable.

Crear un combo box paso a paso

Paso 1: Prepara la lista de opciones

En una hoja auxiliar o área oculta:

Celdas E1:E4 (lista de regiones):
| Norte  |
| Sur    |
| Este   |
| Oeste  |

Paso 2: Inserta el control

  1. Desarrollador > Insertar > Controles de formulario > Cuadro combinado
  2. Dibuja el control en el dashboard (arrastra para crear)
  3. Clic derecho en el control > Formato de control

Paso 3: Configura el control

En el diálogo "Formato de control":

┌─────────────────────────────────────────┐
│  FORMATO DE CONTROL                     │
├─────────────────────────────────────────┤
│  Rango de entrada: $E$1:$E$4            │ ← Lista de opciones
│                                         │
│  Vínculo con celda: $G$1                │ ← Celda de salida
│                                         │
│  Líneas de unión: 4                     │ ← Cuántas mostrar
└─────────────────────────────────────────┘

Paso 4: Entiende la salida

El combo box devuelve un número de índice, no el texto:

Si seleccionas:
- Norte → G1 muestra: 1
- Sur   → G1 muestra: 2
- Este  → G1 muestra: 3
- Oeste → G1 muestra: 4

Paso 5: Convierte el índice a texto

Usa INDICE para obtener el nombre:

=INDICE(E1:E4, G1)

Si G1=2, resultado: "Sur"

Usar el combo box para filtrar datos

Escenario: Tienes ventas por región y quieres que el gráfico muestre solo la región seleccionada.

Datos originales:

Mes Norte Sur Este Oeste
Ene 100 80 90 70
Feb 110 85 95 75
Mar 105 90 100 80

Crear columna dinámica:

En columna F, título: "Región Seleccionada"

F2: =INDICE($B$2:$E$2, $G$1)  → Valor de Ene para región seleccionada
F3: =INDICE($B$3:$E$3, $G$1)  → Valor de Feb para región seleccionada
F4: =INDICE($B$4:$E$4, $G$1)  → Valor de Mar para región seleccionada

Crear gráfico:

  1. Selecciona A1:A4 y F1:F4 (mes + columna dinámica)
  2. Insertar > Gráfico de líneas
  3. El gráfico ahora muestra solo la región del combo box
Cuando cambias el combo box:
Combo = "Sur" → G1 = 2 → INDICE toma columna 2 → Gráfico muestra Sur

Cuadro de lista (List Box)

Similar al combo box pero muestra varias opciones visibles a la vez.

Cuándo usar List Box vs Combo Box

Usar List Box Usar Combo Box
Pocas opciones (3-6) Muchas opciones (>6)
Selección frecuente Selección ocasional
Espacio disponible Espacio limitado
Quieres ver todas las opciones Ahorrar espacio

Configuración de List Box

Formato de control:
- Rango de entrada: Lista de opciones
- Vínculo con celda: Celda de salida (devuelve índice)
- Tipo de selección:
  ○ Sencilla (una opción)
  ○ Múltiple (varias con Ctrl)
  ○ Extendida (rango con Shift)

Nota: Para dashboards, usa selección "Sencilla". Múltiple requiere macros para procesar.

Barra de desplazamiento (Scroll Bar)

Ideal para seleccionar valores numéricos en un rango.

Casos de uso

✓ Seleccionar año (2020-2026)
✓ Ajustar parámetros (tasa de descuento 0-20%)
✓ Navegar por períodos (mes 1-12)
✓ Simulaciones de escenarios

Configuración del Scroll Bar

┌─────────────────────────────────────────┐
│  FORMATO DE CONTROL                     │
├─────────────────────────────────────────┤
│  Valor actual: 1                        │ ← Posición inicial
│  Valor mínimo: 1                        │ ← Inicio del rango
│  Valor máximo: 12                       │ ← Fin del rango
│  Incremento: 1                          │ ← Cambio por clic
│  Cambio de página: 3                    │ ← Cambio por clic en track
│  Vínculo con celda: $H$1                │ ← Salida
└─────────────────────────────────────────┘

Ejemplo: Selector de mes

Paso 1: Crear scroll bar horizontal

Valor mínimo: 1
Valor máximo: 12
Vínculo: H1

Paso 2: Mostrar nombre del mes

Celda I1: =ELEGIR(H1,"Ene","Feb","Mar","Abr","May","Jun",
                       "Jul","Ago","Sep","Oct","Nov","Dic")

Paso 3: Filtrar datos por mes seleccionado

=INDICE(Datos, H1, COINCIDIR("Ventas", Encabezados, 0))

Botones de opción (Option Buttons)

Permiten seleccionar una opción de un grupo mutuamente exclusivo.

Crear grupo de opciones

Paso 1: Dibujar cuadro de grupo

  1. Desarrollador > Insertar > Controles de formulario > Cuadro de grupo
  2. Dibuja un rectángulo que contendrá las opciones
  3. Cambia el texto del título: "Tipo de gráfico"

Paso 2: Agregar botones de opción dentro del grupo

  1. Insertar > Botón de opción
  2. Dibuja dentro del cuadro de grupo
  3. Repite para cada opción
┌─ Tipo de Gráfico ────────────────┐
│                                  │
│  ○ Líneas                        │
│  ○ Barras                        │
│  ● Área                          │ ← Seleccionado
│                                  │
└──────────────────────────────────┘

Paso 3: Vincular a celda

  1. Clic derecho en cualquier botón del grupo > Formato de control
  2. Vínculo con celda: $J$1
  3. Los botones del mismo grupo comparten la misma celda

Salida:

Si seleccionas:
- Líneas → J1 = 1
- Barras → J1 = 2
- Área   → J1 = 3

Usar opciones para cambiar visualización

Fórmula para título dinámico:
=ELEGIR(J1, "Tendencia de Ventas", "Comparativa de Ventas", "Volumen Acumulado")

Para cambiar el tipo de gráfico real,
necesitarías múltiples gráficos superpuestos
y controlar su visibilidad (avanzado)

Casillas de verificación (Check Box)

Cada casilla es independiente y devuelve VERDADERO o FALSO.

Crear filtros con check boxes

Escenario: Mostrar/ocultar series en un gráfico

┌─ Mostrar Regiones ───────────────┐
│                                  │
│  ☑ Norte                         │ → K1 = VERDADERO
│  ☑ Sur                           │ → K2 = VERDADERO
│  ☐ Este                          │ → K3 = FALSO
│  ☑ Oeste                         │ → K4 = VERDADERO
│                                  │
└──────────────────────────────────┘

Usar en fórmulas:

Valor a graficar (si está marcado, mostrar; si no, mostrar 0 o N/A):

=SI($K$1, B2, NA())

Donde:
- K1 = Celda vinculada al checkbox "Norte"
- B2 = Valor de ventas Norte
- NA() = El gráfico ignora este punto

Actualizar gráficos dinámicamente

Método 1: Columna auxiliar con INDICE

Ya vimos este método. Crea una columna que usa INDICE para extraer datos según el control.

Método 2: Rangos con nombre dinámicos

Paso 1: Crear nombre dinámico

  1. Fórmulas > Administrador de nombres > Nuevo
  2. Nombre: VentasSeleccionadas
  3. Se refiere a:
=DESREF(Datos!$A$1, 0, INDICE({1,2,3,4}, Dashboard!$G$1), 12, 1)

Donde:
- G1 tiene el índice del combo box
- {1,2,3,4} son las columnas de cada región

Paso 2: Usar el nombre en el gráfico

Los gráficos pueden usar nombres definidos como fuente de datos.

Método 3: Múltiples gráficos con visibilidad controlada

Para cambiar el tipo de gráfico (no solo los datos):

  1. Crea varios gráficos superpuestos (mismo tamaño, misma posición)
  2. Cada uno con diferentes datos o tipo
  3. Usa formato condicional o macros para mostrar/ocultar

Ejemplo con macros VBA (avanzado):

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$J$1" Then
        Shapes("GraficoLineas").Visible = (Target.Value = 1)
        Shapes("GraficoBarras").Visible = (Target.Value = 2)
        Shapes("GraficoArea").Visible = (Target.Value = 3)
    End If
End Sub

Ejemplo completo: Dashboard con 3 controles

Diseño del dashboard

┌─────────────────────────────────────────────────────────────────┐
│  DASHBOARD DE VENTAS                                            │
│                                                                 │
│  Región: [Norte ▼]     Año: [═══●══] 2024    ○ Mensual ● Trimestral│
│                                                                 │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│   VENTAS: $1,250,000        ▲ +12.5%                           │
│                                                                 │
│   [Gráfico que se actualiza según los 3 controles]             │
│                                                                 │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

Estructura de celdas de control

Controles y sus vínculos:
- Combo Región:   G1 (índice 1-4)
- Scroll Año:     G2 (valor 2020-2026)
- Opciones:       G3 (1=Mensual, 2=Trimestral)

Celdas derivadas:
- H1: =INDICE({"Norte","Sur","Este","Oeste"}, G1)  → Nombre región
- H2: =G2                                          → Año directamente
- H3: =ELEGIR(G3, "Mensual", "Trimestral")         → Texto período

Fórmulas para datos dinámicos

Tabla de datos (simplificada):

Año Período Norte Sur Este Oeste
2024 Q1 300 250 280 220
2024 Q2 320 260 290 240
2024 Q3 310 270 300 230
2024 Q4 320 280 310 260

Extraer valor con múltiples criterios:

=SUMAPRODUCTO(
    (Datos[Año]=$G$2)*
    (Datos[Período]=H5)*
    INDICE(Datos[[Norte]:[Oeste]],, $G$1)
)

Donde:
- G2 = Año seleccionado
- H5 = Período de la fila actual (Q1, Q2, etc.)
- G1 = Índice de región seleccionada

Mejores prácticas para controles

Diseño

✅ Agrupa controles relacionados en un área
✅ Usa etiquetas claras junto a cada control
✅ Muestra el valor seleccionado en texto (no solo el control)
✅ Coloca controles arriba o a la izquierda del dashboard
✅ Usa tamaños consistentes

Funcionalidad

✅ Vincula cada control a una celda específica
✅ Mantén las celdas vinculadas organizadas (ej: columna G)
✅ Usa nombres definidos para celdas importantes
✅ Prueba todas las combinaciones de controles
✅ Incluye un valor predeterminado lógico

Mantenimiento

✅ Documenta qué hace cada control
✅ Coloca listas de opciones en área protegida
✅ Usa referencias absolutas ($G$1) en fórmulas
✅ Agrupa elementos visuales (Ctrl+G para agrupar objetos)

Puntos clave de esta lección

  1. Controles transforman dashboards - De estáticos a interactivos
  2. Combo box es el más versátil - Para listas de cualquier tamaño
  3. Los controles devuelven índices - Usa INDICE/ELEGIR para texto
  4. Scroll bar para rangos numéricos - Años, meses, porcentajes
  5. Option buttons para opciones exclusivas - Uno de varios
  6. Check boxes para filtros independientes - Múltiples activos
  7. Columnas auxiliares hacen la magia - Fórmulas que reaccionan a controles

Próxima lección

Con KPIs y controles listos, es momento de ensamblar todo. En la siguiente lección, crearemos un dashboard completo en una página con layout profesional, agrupación de elementos y consideraciones de impresión.


Ejercicio práctico

Crea un dashboard interactivo

Datos de práctica:

Producto Q1 Q2 Q3 Q4
Laptops 150 180 165 210
Tablets 90 110 100 130
Phones 200 220 240 280
Accessories 80 95 105 120

Tu tarea:

  1. Crea un combo box para seleccionar Producto
  2. Crea un scroll bar para seleccionar Trimestre (1-4)
  3. Muestra el valor de ventas correspondiente en una tarjeta
  4. Crea un gráfico de barras que muestre los 4 trimestres del producto seleccionado
Ver solución paso a paso

Paso 1: Preparar listas

E1:E4 = Laptops, Tablets, Phones, Accessories
F1:F4 = Q1, Q2, Q3, Q4

Paso 2: Combo box producto

Rango entrada: E1:E4
Vínculo: G1
Resultado: G1 = índice 1-4

Paso 3: Scroll bar trimestre

Mínimo: 1, Máximo: 4
Vínculo: G2
Resultado: G2 = 1, 2, 3 o 4

Paso 4: Mostrar selecciones

H1: =INDICE(E1:E4, G1)     → "Laptops"
H2: =INDICE(F1:F4, G2)     → "Q2"

Paso 5: Valor dinámico

=INDICE(B2:E5, G1, G2)

Si G1=1 (Laptops) y G2=2 (Q2), resultado = 180

Paso 6: Datos para gráfico

Columna auxiliar con valores del producto seleccionado:

J2: =INDICE($B$2:$E$5, $G$1, 1)   → Q1 del producto
J3: =INDICE($B$2:$E$5, $G$1, 2)   → Q2 del producto
J4: =INDICE($B$2:$E$5, $G$1, 3)   → Q3 del producto
J5: =INDICE($B$2:$E$5, $G$1, 4)   → Q4 del producto

Paso 7: Crear gráfico

Selecciona F1:F4 y J2:J5, Insertar > Gráfico de barras

El gráfico ahora muestra los 4 trimestres del producto seleccionado en el combo box.

¿Completaste esta lección?

Marca esta lección como completada. Tu progreso se guardará en tu navegador.