Saltar al contenido

Recommended Posts

publicado

Hola:

Función para, dada una fecha inicial y un número de días laborables, obtener una fecha final.

Formas de llamada:

FechaFinal = SumarDias 'Obtiene el siguiente día laborable a hoy

FechaFinal = SumarDias(Fecha) 'Obtiene el siguiente día laborable a Fecha)

FechaFinal = SumarDias(Fecha, Dias) 'Obtiene la fecha transcurridos un nº de días)

En el propio libro, debe existir una hoja de nombre "Festivos" con los días festivos excluidos sábados y domingos. Estas fechas deben informarse en la columna 1.

De no existir la hoja "Festivos", debe informarse de un tercer parámetro en la llamada:

FechaFinal=SumarDias(Fecha, Dias, False)

Si además se quieren excluir los sábados como festivos:

FechaFinal= SumarDias(Fecha, Dias, False, False)

Y también se quieren excluir los domingos como festivos:

FechaFinal= SumarDias(Fecha, Dias, False, False, False)

Enjoy it !

Macro.

SumarDias.zip

publicado

Hola Macro, gracias por tus macros.

El caso más sencillo de sumar días saltándose los sábados, domingos y festivos se puede resolver con la propia función WorkDay de Excel por si alguno no lo sabe:

SumarDias = WorksheetFunction.WorkDay(Fecha, Dias - 1, Sheets("Festivos").Range("A:A"))[/CODE]

Los otros casos los has expresado muy bien.

publicado

Gracias Pedro:

Pero todavía puede ser mas fácil:

FechaFinal = FechaInicial + Dias[/CODE]

Solo pretendía explicar que existen unos parámetros que son opcionales, y que pueden informarse o no.

Evidentemente, con los tres parámetros a false, la función carece de sentido.

Saludos cordiales.

Conéctate para comentar

Podrás dejar un comentario después de conectarte



Conéctate ahora
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.