Excel Avanzado

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

Excel Avanzado

Función DIAS.LAB

| Sin comentarios

Función DIAS.LAB

Esta función devuelve el número total de días laborales entre dos fechas determinadas, con la posibilidad de señalar los días vacacionales o festivos a fin de que no se consideren en el conteo final.

Por ejemplo, es posible calcular la cantidad de días laborales que tomó la elaboración de un proyecto como la formulación de un Plan de Desarrollo Concertado.

Para esto primero se debe registrar las fechas de inicio y fin del proyecto, y los días festivos como se muestra a continuación:

funcion dias.lab 01

 

A continuación, se inserta la fórmula DIAS.LAB indicado los siguientes argumentos para la función:

funcion dias.lab 02

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

Fecha inicial: es el primer campo obligatorio y marca el inicio del periodo de tiempo que se contabilizará:

Fecha final: segundo campo obligatorio y marca el fin del periodo de tiempo que se contabiliza.

Vacaciones: es opcional y sirve para no considerar estas fechas en el conteo de días laborales.

Una vez que son ingresados los campos solicitados, la función calcula la cantidad de días laborales que duró el proyecto, sin considerar los días festivos.

funcion dias.lab 03

Función “DIAS.LAB” con Macros

Realizar este proceso a través de una macro resulta muy útil si se trabaja constantemente con proyectos, en las oficinas de recursos humanos para calcular los días laborados por el personal o en cualquier otra situación que requiera el conteo de los días laborales entre dos fechas determinadas.

Para programar una macro con la cual se pueda calcular la cantidad de días laborales entre dos fechas, se puede usar la siguiente estructura para el código obtenida con el grabador de macros

Sub Dias_laborados()

' Macro1 Macro

Range("F4").Select

ActiveCell.FormulaR1C1 = "=NETWORKDAYS(RC[-3],R[1]C[-3],R[2]C[-3]:R[10]C[-3])"

End Sub

 

De forma alternativa se puede emplear la función WorksheetFunction.NetworkDays para acceder a usar la función Función DIAS.LAB en Excel.

 

Sub dias_laborados()

Range("F7") = WorksheetFunction.NetworkDays(Cells(4, 3), Cells(5, 3), Cells(6, 3).Resize(9, 1))

End Sub

 

Estos códigos permiten realizar el mismo cálculo del ejemplo sin macros, pero con la ventaja de que la ejecución se realiza de forma casi automática y se pueden emplear dentro de un proceso mucho mas complejo.

A continuación se adjunta el archivo en Excel con los ejemplos mostrados:  Funcion DIAS_LAB

Por: Marco Antonio Francisco

 

Deja una respuesta

Los campos requeridos estan marcados con *.