Ayuda con funcion Dia.Lab

Buen día
Viendo las repuestas vi que publicaste una referente a la función Día.Lab que considera los sábados como día laborable, fueras tan amable de explicármela ya que me interesa mucho saber como funciona por ejemplo en donde pongo los datos, que formula pongo, etc.
Te agradecería mucho si me pudieras enviar un ejemplo a mi correo [email protected]
Muchas gracias por tu apoyo.
Saludos

1 Respuesta

Respuesta
Una función es un conjunto de instrucciones que devuelven un valor, para este caso, son una serie de if que evalúan el valor de una fecha y si coincide con un parámetro dado, va aumentado un contador que más adelante será utilizado para un propósito, que en este caso es restar a un rango de fecha los domingos.
Como se hace:
En excel existen varias formas de hacerlo.
Primero todas la fechas en excel tienen asignado un valor, por ejemplo: el 27-nov-2006 tienen un valor numérico igual a 38047, si aplicas la función MOD, el divide el número en otro numero y te da el residuo, este es más complejo y menos exacto así que yo preferí usar otra función que se llama weekday, este simplemente te devuelve 1 para lunes, 2 para martes, 3 para miércoles... etc
Entonces en el if solamente tienes que decir que si el día es 7 (Domingo) aumente el contador
Sería algo como:
For i = fecha_inicial to Fecha_final step 1
If weekday(i,2) =7 then (ojo: El dos es el que indica que el lunes sea 1 hasta el domingo 7)
Contador=contador+1
else
next i
End If
Obviamente antes tienes que ingresar las fechas antes y esto yo lo hago con un inputbox
Ejemplo:
Dim fecha_inicial as date = (se define la fecha inicial como variable)
Dim fecha_final as date = (se define la fecha final como variable)
fecha_inicial = inputbox("digite la fecha") = se habilita un cuadro de texto para ingresar la fecha inicial)
fecha_final = inputbox("digite la fecha final") = se habilita un cuadro de texto para ingresar la fecha final)
Luego de esto colocas el for y juegas con el numero del contador para restarlo de tu rango de fecha, por ejemplo:
Del primero de noviembre al 30 existen 4 domingos, luego el contador estará en 4, este numero se lo puedes restar a tu day(dia_final) que sería 30 de nov de 2006 y te arroja 26 que serían los días laborales del mes incluyendo sábados o una fecha.
sería algo como : Day(dia_final)=30 - contador=4 =26.
Si quieres que los sábados se resten tambien, simplemente agregas esto:
If weekday(i,2) =7 or weekday(i,2)=6 then
Contador=contador+1
else
next i
End If
Cualquier duda me comentas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas