Necesitaría una función en V.B.6.0 similar a la que existe en excel (días.lab) para realizar una diferencia de fechas quitando fines de semana y festivos y no encuentro nada. Me podrías echar una mano a conseguirla.
2 Respuestas
Respuesta de chiquilin06
2
2
chiquilin06, experto en lenguajes de programacion, propramacion OOP,java,vb...
Pues eso no existe bueno que yo conozca Porque diferencia mucho del lugar donde este corriendo la aplicación ok por ejemplo en mexico ay días festivos que no se festejan en Estados Unidos Mira lo que tu ocupas saber es para que país son los días fectivos y así saber que días no son laborables Bueno para que tengas una base definida que son los sábados y domingos este es un ejemplo Todo con ejemplos es mejorrrr ************************************************** Function DiasTrabajados (BegDate As Variant, EndDate As Variant) As Integer ' Note that this function does not account for holidays. Dim WholeWeeks As Variant Dim DateCnt As Variant Dim EndDays As Integer BegDate = DateValue(BegDate) EndDate = DateValue(EndDate) WholeWeeks = DateDiff("w", BegDate, EndDate) DateCnt = DateAdd("ww", WholeWeeks, BegDate) EndDays = 0 Do While DateCnt < EndDate If Format(DateCnt, "ddd") <> "Sun" And _ Format(DateCnt, "ddd") <> "Sat" Then EndDays = EndDays + 1 End If DateCnt = DateAdd("d", 1, DateCnt) Loop DiasTrabajados= WholeWeeks * 5 + EndDays End Function ********************************************** Esta función le envías dos fechas y te regresa el numero de días laborables como quien dice le quita los días de sábado y domingo Solo lo que le falta es agregar lo equivalente a los días festivos pero eso es en relación a un país en concreto bueno espero valoracion =5 Cualquier duda estamos en contacto bye
Tienes que escribir la función tu mismo. Debes tener una tabla en donde guardas los días festivos, Luego en un ciclo FOR, vas desde la fecha inicial a la final, preguntando si el día esta entre lunes y viernes, si es así verificas que no sea un festivo, si no lo cuentas, al final devuelves ese contador.