Public Function CalculaFechaEntrega(FechaPedido As Date, DiasParaEntrega As Integer) As Date
Dim fechaEntregaPrevista As Date
Dim diasEntrega As Integer = DiasParaEntrega
fechaEntregaPrevista = FechaPedido
Do
fechaEntregaPrevista = fechaEntregaPrevista.AddDays(1)
If fechaEntregaPrevista.DayOfWeek = DayOfWeek.Saturday Or fechaEntregaPrevista.DayOfWeek = DayOfWeek.Sunday Then
'es dia festivo, no hacemos nada
ElseIf EsFestivo(fechaEntregaPrevista) Then
'es dia festivo, no hacemos nada
Else
diasEntrega = diasEntrega - 1
End If
Loop While diasEntrega > 0
Return fechaEntregaPrevista
End Function
Private Function EsFestivo(FechaAComprovar As Date) As Boolean
If FechaAComprovar.Day = 1 And FechaAComprovar.Month = 1 Then
'comprueba el 1 de enero
Return True
ElseIf FechaAComprovar.Day = 25 And FechaAComprovar.Month = 12 Then
'comprueba navidad
Return True
'añadir otras fechas
Else
Return False
End If
End Function