miércoles, 12 de marzo de 2014

Personalizar etiquetas de datos en un gráfico de Excel 2013

Recientemente vimos un truco para incorporar a nuestros gráficos de Excel unas etiquetas personalizadas sin emplear macros, pero engañando a Excel (ver entrada1), y más tiempo atrás aún, como conseguíamos lo mismo empleando una macro (ver entrada2)
Hoy lo que veremos es el avance que ha hecho Excel en su última versión -Excel 2013- donde habilita la posibilidad de editar y configurar el origen de las Etiquetas de datos a mostrar, de una manera algo más completa y personalizada que en versiones anteriores.

Para ello veremos el siguiente ejemplo propuesto por una lectora, donde pretendía incorporar unos valores porcentuales como parte de la etiqueta de datos de un gráfico de columnas apiladas. Veamos nuestro gráfico de partida y nuestro origen de datos donde debemos incorporar ese dato porcentual (rangos en amarillo):

Personalizar etiquetas de datos en un gráfico de Excel 2013


El objetivo es claro, debemos añadir a nuestro gráfico, para cada punto de cada serie de datos, su Etiqueta de datos con el valor porcentual correspondiente... como a modo de ejemplo propuso la lectora.

Haremos uso de la nueva funcionalidad, muy sencilla de emplear.
Para ello seleccionaremos las etiquetas de datos en el gráfico de cada una de las cuatro series (Vend1, Vend2, Vend3 y Vend4) y con éstas seleccionados accederemos al Formato de Etiqueta de datos > Sección Opciones de etiqueta > Contenido de etiqueta > Valor de las celdas:


Al seleccionar la opción Valor de las celdas se abrirá una ventana diálogo donde indicaremos dónde están los datos a mostrar; en nuestro ejemplo y para la selección en:
=Hoja1!$C$6;Hoja1!$E$6;Hoja1!$G$6

Personalizar etiquetas de datos en un gráfico de Excel 2013



Si deseamos personalizar más aún nuestras Etiquetas podemos hacer uso del resto de opciones (idénticas a las de versiones anteriores). Yo dejaré únicamente este valor como Etiqueta de datos.
Y tras repetir el proceso para las cuatro series tendríamos:

Personalizar etiquetas de datos en un gráfico de Excel 2013



Con lo que logramos el objetivo...

Para este caso concreto y aquellos que aún no tengan la versión Excel 2013 dejo también el siguiente código que dejaría el gráfico con las etiquetas definidas como en lo explicado anteriormente:

Sub AgregarEtiqueta()
Dim texto As String
'Activamos nuestro gráfico, sobre el que añadiremos las etiquetas personalizadas
ActiveSheet.ChartObjects("1 Gráfico").Activate
 
Application.ScreenUpdating = False
'pasamos por todos las series
For x = 1 To 4
col = 0
'contamos el número de puntos existentes en la serie de dispersión XY
puntos = ActiveChart.SeriesCollection(x).Points.Count
'agregamos etiquetaas de datos
ActiveChart.SeriesCollection(x).ApplyDataLabels Type:=xlDataLabelsShowLabel
    'recorremos los diferentes puntos de cada Serie
    For i = 1 To puntos
        texto = Cells(x + 2, 3 + col)
        'definimos el texto y valor a incluir en la etiqueta
        ActiveChart.SeriesCollection(x).Points(i).DataLabel.Text = Format(texto, "0.00%")
        col = col + 2
    Next i
Next x
Application.ScreenUpdating = True
End Sub

2 comentarios:

  1. Simple, Sencillo me quito el sombrero, mis respetos!!! Muchas gracias

    ResponderEliminar