Excel Avanzado

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

Excel Avanzado

Gráfico en VBA para hallar el número de asistencias de los trabajadores

| 2 comentarios

GRÁFICO EN VBA APLICADO A HALLAR EL NÚMERO DE ASISTENCIA DE LOS TRABAJADORES

En este ejercicio se aplicara una macro con la cual se puede crear un gráfico en el cual se visualizará la cantidad de asistencia de los trabajadores de las empresas por cada mes. Esto es porque a menudo es útil reconocer que empresa o empresas son las que tienen más asistencia por parte de sus trabajadores mensualmente.

De esta manera, en nuestro archivo adjunto al final del texto, tendremos una lista con datos de la asistencia de los trabajadores de cada empresa mensualmente, esto se encuentra en la “hoja 1”. A partir de estos datos creamos una tabla dinámica en la “hoja 2”.

Luego se prosigue a crear el gráfico a partir de la siguiente macro:

 

Sub asistencia()

 

Dim atitulo(1) As String

 

atitulo(1) = "Número de Asistencias"

Row = 2

 

celda_inicial = Worksheets("Hoja2").Cells(Row, 1).Address

datos = Range(celda_inicial).CurrentRegion.SpecialCells(xlVisible).Address

Charts.Add

ActiveChart.ChartType = xlColumnClustered

ActiveChart.SetSourceData Source:=Sheets("Hoja2").Range(datos)

ActiveChart.Location where:=xlLocationAsObject, Name:="Hoja3"

With ActiveChart

.HasTitle = True

.ChartTitle.Characters.Text = "Distribución de " + atitulo(1) + " por empresa"

.Axes(xlCategory, xlPrimary).HasTitle = True

.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = atitulo(1)

.Axes(xlCategory, xlPrimary).HasTitle = True

.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "N° de casos"

End With

ActiveChart.HasLegend = False

ActiveChart.HasDataTable = True

ActiveChart.DataTable.ShowLegendKey = True

ActiveChart.HasPivotFields = False

Selection.AutoScaleFont = True

With Selection.Font

.Name = "arial"

.Size = 6

.Strikethrough = False

.Superscript = False

.Subscript = False

.OutlineFont = False

.Shadow = False

.Underline = xlUnderlineStyleNone

.ColorIndex = xlAutomatic

.Background = xlAutomatic

End With

End Sub

 

Finalmente, se obtiene un gráfico en la cual se aprecia mediante barras la cantidad mensual de asistencia de trabajadores por empresa.

 

A continuación adjunto el ejemplo mencionado

NÚMERO DE ASISTENCIA DE LOS TRABAJADORES

 

Elaborado por John Manuel Zapana Solorzano

 

2 comentarios

  1. Buenas tardes:
    Es muy útil para poder visualizar y analizar en una empresa, adicionalmente de las asistencias también las horas extras o por compensar.
    Y esto te permite ver cual por ejemplo cual es la unidad o área que más horas por compensar tiene y analizar la situación, quizás el problema sea muy poca mano de obra; mala asignación de las funciones, etc.

    Gracias!

  2. Saludos Fernando tengo un desarrollo que requiere que haga una grafica de ventas ordenado por mes de un año anterior o x año, el detalle es q tengo la fecha por ddmmaaaa quisiera tu apoyo u orientacion.
    Gracias por tu pronta ayuda.

Deja una respuesta

Los campos requeridos estan marcados con *.