Thursday, September 12, 2013

Cuántos Sábados y Domingos hay en un rango de fechas

Cuántos Sábados y Domingos hay en un rango de fechas (en vb.net)

La solución... seguramente muchas pero la mía ha sido Una función que recibe el rango de fechas (en mi caso solo una porque la trabajo con la fecha actual) que va preguntando si las fechas intermedias son o no sábado o domingo. Simple. 

    Public Function NotWorkingDays(ByVal dtFechaRegistro As Date)

        Dim dtFechaActual As Date = Now.Date 
        dtFechaRegistro = dtFechaRegistro.Date

        Dim dias_no_laborales As Integer = 0
        While dtFechaRegistro <= dtFechaActual

            If dtFechaRegistro.DayOfWeek = DayOfWeek.Saturday Or dtFechaRegistro.DayOfWeek = DayOfWeek.Sunday Then
                dias_no_laborales = dias_no_laborales + 1
            End If

            dtFechaRegistro = dtFechaRegistro.AddDays(1)
        End While

        Return dias_no_laborales
    End Function