La funzione che segue serve a stabilire se una data è compresa nel periodo in cui è in vigore l'ora legale oppure l'ora solare.
Function isLegale(data As Date) As Boolean
Dim PrimaDomApr As Date
Dim UltimaDomOtt As Date
Dim cont As Integer
For cont = 1 To 7
PrimaDomApr = DateSerial(Year(data), 4, cont)
If Weekday(PrimaDomApr) = vbSunday Then Exit For
Next
For cont = 31 To 25 Step -1
UltimaDomOtt = DateSerial(Year(data), 10, cont)
If Weekday(UltimaDomOtt) = vbSunday Then Exit For
Next
isLegale = data >= PrimaDomApr And data < UltimaDomOtt
End Function
La funzione ritornerà il valore Vero se la data indicata nel richiamo della funzione appartiene al periodo dell'ora legale.
|