1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
| Sub Affiche(oUSF As Object, oControl As String, Optional oFrame As String)
Dim T As Single, L As Single
If Not oFrame = "" Then
T = oUSF.Controls(oFrame).Top + 17
L = oUSF.Controls(oFrame).Left
End If
Set USF = oUSF
Date_initiale = oUSF.Controls(oControl).Value
Txt_dt = Replace(oUSF.Controls(oControl).Name, "TextBox", "")
With Calendrier
.Top = oUSF.Top + T + oUSF.Controls(oControl).Top _
+ oUSF.Controls(oControl).Height * 2 + 3
.Left = oUSF.Left + L + oUSF.Controls(oControl).Left
.Show
End With
End Sub
Sub init_Feries(Annee As Integer)
Dim d0 As Date, i As Integer
Jr_Feries = Array("Premier de l'An", "Pâques", "Lundi de Pâques", "Fête du Travail", _
"Victoire 1945", "Ascension", "Pentecôte", "Lundi de Pentecôte", "Fête Nationale", _
"Assomption", "Toussaint", "Armistice", "Noël", "Premier de l'An", "Pâques", _
"Lundi de Pâques", "Fête du Travail", "Victoire 1945", "Ascension", "Pentecôte", _
"Lundi de Pentecôte", "Fête Nationale", "Assomption", "Toussaint", "Armistice", "Noël")
Dt_Feries(0) = DateSerial(Annee, 1, 1)
d0 = DateSerial(Annee, 4, ((234 - 11 * (Annee Mod 19)) Mod 30))
i = (d0 - DateSerial(1899, 12, 31)) / 7
Dt_Feries(1) = CDate(Math.Round(i) * 7 - 6)
Dt_Feries(2) = DateAdd("d", 1, Dt_Feries(1))
Dt_Feries(3) = DateSerial(Annee, 5, 1)
Dt_Feries(4) = DateSerial(Annee, 5, 8)
Dt_Feries(5) = DateAdd("d", 39, Dt_Feries(1))
Dt_Feries(6) = DateAdd("d", 49, Dt_Feries(1))
Dt_Feries(7) = DateAdd("d", 1, Dt_Feries(6))
Dt_Feries(8) = DateSerial(Annee, 7, 14)
Dt_Feries(9) = DateSerial(Annee, 8, 15)
Dt_Feries(10) = DateSerial(Annee, 11, 1)
Dt_Feries(11) = DateSerial(Annee, 11, 11)
Dt_Feries(12) = DateSerial(Annee, 12, 25)
Dt_Feries(13) = DateSerial(Annee + 1, 1, 1)
d0 = DateSerial(Annee + 1, 4, ((234 - 11 * ((Annee + 1) Mod 19)) Mod 30))
i = (d0 - DateSerial(1899, 12, 31)) / 7
Dt_Feries(14) = CDate(Math.Round(i) * 7 - 6)
Dt_Feries(15) = DateAdd("d", 1, Dt_Feries(14))
Dt_Feries(16) = DateSerial(Annee, 5, 1)
Dt_Feries(17) = DateSerial(Annee, 5, 8)
Dt_Feries(18) = DateAdd("d", 39, Dt_Feries(14))
Dt_Feries(19) = DateAdd("d", 49, Dt_Feries(14))
Dt_Feries(20) = DateAdd("d", 1, Dt_Feries(19))
Dt_Feries(21) = DateSerial(Annee + 1, 7, 14)
Dt_Feries(22) = DateSerial(Annee + 1, 8, 15)
Dt_Feries(23) = DateSerial(Annee + 1, 11, 1)
Dt_Feries(24) = DateSerial(Annee + 1, 11, 11)
Dt_Feries(25) = DateSerial(Annee + 1, 12, 25)
End Sub
Function Est_Ferie(dt As Date)
Dim i As Byte
Est_Ferie = False
For i = 0 To UBound(Dt_Feries)
If dt = Dt_Feries(i) Then
Est_Ferie = True
idx_ferie = i
End If
Next i
End Function |
Partager