El gráfico cilindro agrupado (gráfico agrupado) es una de las herramientas integradas que proporciona Microsoft Excel para mostrar visualmente la información para revisar, compartir y analizar datos. Los gráficos agrupados reúnen información basada en diversas categorías, las tablas agrupadas muestran esos valores de lado a lado.
El primer paso para la creación de un cilindro agrupado es organizar los datos de manera adecuada en nuestra hoja de Excel. Es importante no dejar filas o columnas en blanco entre los datos. A continuación se presenta un ejemplo de las ventas cuatrimestrales de una empresa en los tres países donde se encuentra.
(Para mayor visualización de la imagen, hacer click en la misma)
Para crear el gráfico de cilindro agrupado seleccionamos la tabla de datos, luego nos dirigimos a la ficha Insertar y pulsamos el botón Columna para seleccionar el gráfico correspondiente:
(Para mayor visualización de la imagen, hacer click en la misma)
Para generar el mismo gráfico en macros podemos utilizar el grabador obteniendo el siguiente código:
Sub CilindroAgrupado()
Range("A9:D12").Select
ActiveSheet.Shapes.AddChart.Select
ActiveChart.ChartType = xlCylinderColClustered
ActiveChart.SetSourceData Source:=Range("Hoja1!$A$9:$D$12")
End Sub
Para generar el mismo gráfico en macros sin el grabador, podemos generar un código de la siguiente manera:
1° Creamos un UserForm que contenga un RefEdit1 para ingresar el rango de datos y dos CommandButton, uno para crear el gráfico y otro para salir del UserForm.
2° Creamos un CommandButton "Crear Gráfico Cilindro Agrupado" en la hoja activa para mostrar el UserForm.
(Para mayor visualización de la imagen, hacer click en la misma)
3° Dentro del UserForm iniciamos la definición del código que creará el gráfico.
' Definimos nuestra variable Rango.
Dim Rango As String
' Inciamos la generación del código dentro CommandButton "Crear"
Private Sub CommandButton1_Click()
' Usamos la estructura If Then Else, si el valor ingresado en el RefEdit1 es diferente de 0 entonces:
If Len(Trim(RefEdit1.Text)) <> 0 Then
' La variable Rango toma el valor de RefEdit1
Rango = RefEdit1.Value
' Ordenamos la adición de un gráfico (AddChart) en la hoja activa.
ActiveSheet.Shapes.AddChart.Select
' Seleccionamos el tipo de gráfico (ChartType), en nuestro caso el cilindro agrupado.
ActiveChart.ChartType = xlCylinderColClustered
' Por último se ajusta el origen de datos indicando el rango de la tabla.
ActiveChart.SetSourceData Source:=Range(Rango)
' De lo contrario
Else
' Se muestra un mensaje para ingresar un nuevo rango.
MsgBox "Ingrese Nuevo Rango"
' Termina If
End If
' Fin del código.
End Sub
Archivo adjunto: Cilindro Agrupado en Excel