Este tutorial demostrará cómo crear gráficos animados en todas las versiones de Excel: 2007, 2010, 2013, 2016 y 2022.
Un gráfico animado de Excel que se dibuja a sí mismo en la pantalla frente a los ojos de su audiencia es una forma poderosa y llamativa de poner sus datos en movimiento.
A diferencia de los gráficos estáticos, los gráficos animados brindan un contexto adicional a sus datos y ayudan a identificar patrones emergentes. Como ejemplo, observe el gráfico de líneas animado con marcadores que se muestra a continuación y que muestra el PIB de cuatro países (EE. UU., China, Brasil y Turquía) durante las últimas décadas.
Si bien la contraparte estática no parecería nada especial o nueva, el efecto animado hace posible que el gráfico cuente la historia por usted, dando vida a las cifras inmóviles del PIB.
En este tutorial paso a paso para principiantes, aprenderá cómo hacer lo mismo con sus datos, incluso si solo está dando sus primeros pasos en Excel.
Empezando
Considere la siguiente tabla de datos que contiene las cifras del PIB de cada país:
Para animar el gráfico, usaremos una macro VBA simple que trazará suavemente los valores en el gráfico.
Nota: Al agregar código VBA a su libro de trabajo, asegúrese de guardar su libro de trabajo en formato .xlsm (Hoja de trabajo habilitada para macros de Microsoft Excel) para habilitar macros.
Ahora, arremangámonos y pongámonos manos a la obra.
Paso # 1: Configure las columnas auxiliares.
Para empezar, expanda la tabla de datos con columnas auxiliares adicionales donde los valores reales se copiarán gradualmente, creando el efecto de animación.
Copie los encabezados de las columnas que contienen los números del PIB (B2: E2) en las celdas correspondientes junto a la tabla de datos (F2: I2).
El rango de celdas resaltado en rojo claro (F3: I13) define el lugar donde almacenaremos la salida de la macro VBA.
Además, agregue separadores decimales para el rango de celdas resaltado (Inicio> Número> Estilo de coma).
Paso 2: traza un gráfico vacío.
Una vez que haya asignado algo de espacio para las columnas auxiliares, cree un gráfico 2-D vacío usando las columnas (F2: I13) como su fuente de datos:
- Resalta cualquier celda vacía.
- Cambie al Insertar pestaña.
- Haga clic en "Insertar gráfico de líneas o áreas.”
- Escoger "Línea con marcadores.”
Una vez hecho esto, ahora debemos vincular el gráfico vacío a las celdas de las columnas auxiliares (F: yo). Haga clic con el botón derecho en el gráfico vacío y haga clic en "Seleccione Datos.”
En el Seleccionar fuente de datos cuadro de diálogo, debajo de "Entradas de leyenda (serie)," golpea el "Agregar" botón.
Cuando el Editar serie aparece el cuadro de diálogo, cree cuatro nuevas series de datos basadas en las columnas auxiliares (F: yo):
- Para "Nombre de la serie,"Especifique la celda de la fila del encabezado de columna EE. UU. (F2).
- Para "Valores de la serie,"Seleccione el rango de celda vacía correspondiente (F3: F13).
Repita el mismo proceso para las tres columnas restantes.
Una vez que tenga su serie de datos en su lugar, importe las etiquetas del eje horizontal al gráfico.
Para hacer eso, en "Etiquetas de eje horizontal (categoría)," haga clic en el "Editar" botón.
En el Etiquetas de eje cuadro de diálogo, debajo de "Gama de etiquetas de eje, ”Resalte los valores del eje (A3: A13).
Aquí hay un consejo profesional: si agrega o elimina elementos de la tabla de datos con regularidad, configure rangos de gráficos dinámicos para evitar la molestia de tener que modificar el código fuente cada vez que eso suceda.
Para colmo, haga que el futuro gráfico de líneas sea aún más informativo agregando el título y la leyenda del gráfico:
- Haga clic en el área del gráfico.
- Ve a la Diseño pestaña.
- Seleccione "Agregue elementos de gráfico.”
- Agregue el título del gráfico (Título del gráfico> Arriba del gráfico).
- Agregue la leyenda del gráfico (Leyenda> Abajo).
Paso # 3: Programe el VBA para crear el efecto animado.
Una vez que los datos de origen del gráfico se han configurado de la manera correcta, luego viene la parte difícil: escribir la macro VBA que hará todo el trabajo sucio por usted con un solo clic.
Antes de sumergirnos en el meollo de la cuestión, asegúrese de tener el Pestaña de desarrollador que se muestra en la cinta. Si está deshabilitado, haga clic derecho en cualquier espacio vacío en el Cinta y elige "Personaliza la cinta”En el menú que aparece.
En el Opciones de Excel cuadro de diálogo, marque la casilla "Desarrollador"Cuadro y haga clic en"está bien.”
Una vez hecho esto, es hora de lanzar el Kraken de Excel, la función que empuja los límites de lo que es posible en el mundo de las hojas de cálculo. Es hora de liberar el poder del VBA.
Primero, abra el editor de VBA:
- Navega al Desarrollador pestaña.
- Haga clic en el "Visual Basic" botón.
En el editor, seleccione el Insertar pestaña y elija "Módulo.”
Una vez allí, copie la siguiente macro en la ventana de código:
123456789101112131415161718192021222324 | Gráfico_animado secundario ()'Declarar variablesConst StartRow siempre que = 2Atenuar LastRow tan largoDim RowNumber tan largo'Obtener la última fila de datosLastRow = Rango ("A" & StartRow) .End (xlDown) .Row'Gráfico claro y gráfico en blanco de visualizaciónRango ("F" y StartRow, "I" y LastRow) .ClearContentsDoEventsApplication.Wait (Now + TimeValue ("00: 00: 1"))Paso a través de cada período del gráficoPara RowNumber = StartRow a LastRowDoEventsRango ("F" & RowNumber, "I" & RowNumber) .Value = Rango ("B" & RowNumber, "E" & RowNumber) .ValueApplication.Wait (Now + TimeValue ("00: 00: 1"))DoEventsNext RowNumberEnd Sub |
A primera vista, el código puede parecer desalentador para los novatos de VBA, pero en realidad, solo se necesitan unos pocos pasos simples para adaptar el código a sus necesidades.
Básicamente, el código se puede dividir en cuatro secciones, como se muestra en la captura de pantalla a continuación. Los rectángulos verdes representan los segmentos del código que deben adaptarse a sus datos, mientras que el resto debe permanecer sin cambios.
Acerquemos las partes que necesita para ajustar. Para su comodidad, vuelva a mirar la tabla de datos y siga mis pasos:
Declarar variables: Esta sección presenta nuevas variables con las que trabajar con VBA. En nuestro caso, la constante etiquetada como "StartRow"Ayuda al VBA a determinar dónde comienza la tabla de datos (fila 2). Por lo tanto, el valor constante debe corresponder a la fila donde comienzan sus datos.
1 | Const StartRow siempre que = 2 |
Obtener la última fila de datos: Esta línea de código le dice al VBA que analice la tabla de datos y defina dónde termina la tabla de datos (fila 13) para que luego pueda acercar solo los valores dentro del rango de celdas especificado y omitir el resto de la hoja de trabajo.
Para llevarlo a cabo, especifique la primera columna ("A") donde comienza la tabla de datos para que el VBA encuentre la última fila en esa columna que contiene una celda no vacía (columna A).
1 | LastRow = Rango ("A" & StartRow) .End (xlDown) .Row |
Gráfico claro y gráfico en blanco de visualización: Esta sección es responsable de borrar los valores en las columnas auxiliares (F: yo) cada vez que ejecuta la macro.
De esa manera, puede repetir el mismo efecto animado una y otra vez sin tener que limpiar las celdas de la hoja de trabajo por su cuenta. Para ajustar, especifique la primera y la última columna auxiliar en su tabla de datos ("F" y "I").
1 | Rango ("F" y StartRow, "I" y LastRow) .ClearContents |
Paso a través de cada período del gráfico: Aquí es donde ocurre toda la magia. Habiendo elegido el rango de celdas, el VBA va fila por fila y llena las columnas auxiliares con los valores reales correspondientes a intervalos de un segundo, creando efectivamente el efecto animado.
Para lograrlo, solo necesita cambiar esta línea de código para que VBA copie los valores en las columnas auxiliares:
1 | Rango ("F" & RowNumber, "I" & RowNumber) .Value = Rango ("B" & RowNumber, "E" & RowNumber) .Value |
La primera parte del código (Rango ("F" & RowNumber, "I" & RowNumber) .Value) toma todas las columnas auxiliares en la tabla de datos (F: yo) mientras que la segunda parte de la ecuación (Rango ("B" y RowNumber, "E" y RowNumber) .Value) es responsable de importar los valores reales en ellos.
Con todo eso en mente, el "F" y "I" Los valores caracterizan la primera y la última columna auxiliar (columnas F y I). De la misma manera, "B" y "MI" representan la primera y la última columna que contienen las cifras reales del PIB (columnas B y E).
Una vez que haya superado todo eso, haga clic en el icono del disquete para guardar el código VBA y cerrar el editor.
Paso # 4: Crea el botón de macro.
Para unir los datos de la hoja de trabajo y la macro recién creada, configure un botón para ejecutar el código VBA.
- Ve a la Desarrollador pestaña.
- Haga clic en el "Insertar" botón.
- Debajo "Controles de formulario," Seleccione "Botón (Control de formulario).”
Haga clic donde le gustaría colocar el botón (preferiblemente cerca del título del gráfico). En ese punto, el Asignar macro aparecerá el cuadro de diálogo. Seleccione la macro de VBA que acaba de crear (Gráfico_animado) y haga clic en "está bien.”
Como ajuste final, cambie el texto del botón (haga doble clic en el texto del botón y cambie el nombre). Si es necesario, mueva el botón a la posición que desee.
Ahora, haga clic en el botón y observe cómo el VBA llena suavemente el gráfico vacío con los valores reales, y la belleza de este método es que puede cambiar el tipo de gráfico subyacente con solo unos pocos clics sin tener que pasar por todos los aros nuevamente.
Así es como se hace. La animación de sus gráficos de Excel puede ser una excelente manera de brindar una perspectiva única de sus datos que, de otro modo, podría haber pasado por alto.
Obviamente, puede llevar algún tiempo comprender realmente la lógica detrás del código VBA. Pero dado que el mismo código se puede reutilizar repetidamente para diferentes tipos de datos y gráficos, vale la pena intentarlo. Una vez que superas la breve curva de aprendizaje, el mundo es tu ostra.