Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado

Gráfico de línea con marcadores

| 1 comentario

El gráfico de lineas con marcadores es una herramienta muy útil pues permite visualizar  una serie de datos a través del tiempo y analizar si existe alguna tendencia.  Cabe señalar, que el uso de marcadores ayuda a identificar con mayor rapidez los datos individuales.

Comúnmente,  en el eje horizontal se ubican los datos de categorías y en el eje vertical los datos de valor. Los datos de categoría pueden ser números o textos, estos representan valores separados uniformemente como meses, trimestres o ejercicios fiscales.

Ejemplo

La empresa ABC quiere analizar como ha evolucionado la venta un nuevo producto a través del tiempo en Lima y Arequipa. Para ello, el analista del área considera que la mejor manera de visualizar los datos es en un gráfico de lineas con marcadores y se cuenta con la siguiente información.

Gráfico de línea con marcadores 01

(Para mayor visualización de la imagen, hacer click en la misma)

A continuación se describirá como elaborar el gráfico propuesto sin usar y usando VBA.

Solución sin usar VBA:

1. Seleccionar la base de datos.

2. Seleccionar la pestaña "Insertar".

3. Seleccionar "Linea" y, luego, el subtipo "Linea con marcadores".

Gráfico de línea con marcadores 02

(Para mayor visualización de la imagen, hacer click en la misma)

 

El gráfico seleccionado aparecerá automáticamente.

Gráfico de línea con marcadores 03

(Para mayor visualización de la imagen, hacer click en la misma)

Solución usando VBA:

Para resolver el ejemplo propuesto se deberá utilizar la siguiente macro. Esta solución también incluye la adición de un título, para ello se cambiará el diseño por uno que incluya título.

Gráfico de línea con marcadores 04

(Para mayor visualización de la imagen, hacer click en la misma)

A continuación, se analizará cada parte del código de la macro.

Primero, se seleccionará la primera celda de la base de datos, la cual contiene la palabra "Mes".

'Selección de la primera celda
Cells.Find(What:="mes", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate

Segundo, se almacenarán las coordenadas de la primera y la ultima celda de la base de datos.

'Almacenado de coordenadas de las celdas de interés
x = Selection.Row
y = Selection.Column
Selection.End(xlDown).End(xlToRight).Select
x1 = Selection.Row
y1 = Selection.Column

Tercero, se almacenará el nombre del titulo, el cual se encuentra sobre la base de datos.

'Almacenado de titulo
Titulo = Selection.End(xlToLeft).End(xlUp).Text

Cuarto, se seleccionará la base de datos.

'Selección de datos
Range(Cells(x, y), Cells(x1, y1)).Select

Quinto, se creará el gráfico requerido.

'Creación del gráfico de linea con marcadores
ActiveSheet.Shapes.AddChart.Select
ActiveChart.ChartType = xlLineMarkers
ActiveChart.SetSourceData Source:=Range(Cells(x, y), Cells(x1, y1))

Sexto, se cambiará el diseño del gráfico y se le adicionará el titulo almacenado.

'Cabio de diseño y adición de un título
ActiveChart.ApplyLayout (3)
ActiveChart.ChartTitle.Text = Titulo
En el siguiente enlace se encuentra un ejemplo resuelto en Excel.
Descargar: Gráfico de linea con marcadores
Por: Johanna Iparraguirre

Un comentario

  1. Buenos días

    el código funciona a la perfección, pero y si tengo mas columnas para incluir como podría hacerlo.

    Ejemplo

    Día Curva proyectada Mes actual Mejor mes Mes anterior
    01/03/2017 1.000.000 600.000 1.100.000 900.000
    02/03/2017 2.000.000 1.200.000 2.200.000 1.800.000
    03/03/2017 3.000.000 1.800.000 3.300.000 2.700.000
    04/03/2017 4.000.000 2.400.000 4.400.000 3.600.000
    05/03/2017 5.000.000 3.000.000 5.500.000 4.500.000
    06/03/2017 6.000.000 3.600.000 6.600.000 5.400.000
    07/03/2017 7.000.000 7.700.000 6.300.000
    08/03/2017 8.000.000 8.800.000 7.200.000
    09/03/2017 9.000.000 9.900.000 8.100.000
    10/03/2017 10.000.000 11.000.000 9.000.000
    11/03/2017 11.000.000 12.100.000 9.900.000
    12/03/2017 12.000.000 13.200.000 10.800.000
    13/03/2017 13.000.000 14.300.000 11.700.000
    14/03/2017 14.000.000 15.400.000 12.600.000
    15/03/2017 15.000.000 16.500.000 13.500.000
    16/03/2017 16.000.000 17.600.000 14.400.000
    17/03/2017 17.000.000 18.700.000 15.300.000
    18/03/2017 18.000.000 19.800.000 16.200.000
    19/03/2017 19.000.000 20.900.000 17.100.000
    20/03/2017 20.000.000 22.000.000 18.000.000
    21/03/2017 21.000.000 23.100.000 18.900.000
    22/03/2017 22.000.000 24.200.000 19.800.000
    23/03/2017 23.000.000 25.300.000 20.700.000
    24/03/2017 24.000.000 26.400.000 21.600.000
    25/03/2017 25.000.000 27.500.000 22.500.000
    26/03/2017 26.000.000 28.600.000 23.400.000
    27/03/2017 27.000.000 29.700.000 24.300.000
    28/03/2017 28.000.000 30.800.000 25.200.000
    29/03/2017 29.000.000 31.900.000 26.100.000
    30/03/2017 30.000.000 33.000.000 27.000.000
    31/03/2017 31.000.000 34.100.000 27.900.000

    Con tu código me toma la fecha y solo 2 columnas y para mi es necesario que tome las 4

Deja una respuesta

Los campos requeridos estan marcados con *.