Private Sub sel_jour_Change()
Dim Ligne As Long
' splitte la variable pour n'avoir que le jour
decoupe = Split(sel_jour.Value, " ")
' récupération du nom du jour
jour = decoupe(0)
If jour = "lundi" Then
' RNIAM et sauvegardes activées le lundi
coche_sauvegarde_hebdo.Enabled = True
coche_sauvegarde_mensuelle.Enabled = True
coche_rniam.Enabled = True
Else
coche_sauvegarde_hebdo.Enabled = False
coche_sauvegarde_mensuelle.Enabled = False
coche_rniam.Enabled = False
End If
If jour = "jeudi" Then
' sauvegarde intranet active le jeudi uniquement
coche_intranet.Enabled = True
Else
coche_intranet.Enabled = False
End If
' partie 1er jour du mois
' par défaut Omnivista et imprimantes sont décochés
coche_omnivista.Enabled = False
coche_imprimantes.Enabled = False
Sheets("Calendrier").Activate
If sel_jour.Value <> 0 Then
Ligne = Recherche(sel_jour.Text, 1)
'si le jour précédent le jour sélectionné est inférieur à celui-ci
'et si le jour suivant le jour sélectionné est supérieur à celui-ci
' c'est qu'on est en début de mois
If Val(decoupe(1)) < Day(Worksheets("Calendrier").Cells(Ligne + 1, 1)) And Val(decoupe(1)) < Day(Worksheets("Calendrier").Cells(Ligne - 1, 1)) Then
coche_omnivista.Enabled = True
coche_imprimantes.Enabled = True
End If
Else
coche_omnivista.Enabled = True
coche_imprimantes.Enabled = True
End If
' fin partie 1er jour du mois
' partie dernier lundi du mois
Set rg = Worksheets("Calendrier").Cells(Ligne + 2, 1)
coche_sauvegarde_mensuelle.Enabled = False
If WorksheetFunction.Weekday(rg) = 2 Then
Select Case Month(rg)
Case 1, 3, 5, 7, 8, 10, 12
If Day(rg) > 24 Then
coche_sauvegarde_mensuelle.Enabled = True
End If
Case 4, 6, 9, 11
If Day(rg) > 23 Then
coche_sauvegarde_mensuelle.Enabled = True
End If
Case 2
If Year(rg) Mod 4 = 0 Then
If Day(rg) > 22 Then
coche_sauvegarde_mensuelle.Enabled = True
End If
Else
If Day(rg) > 21 Then
coche_sauvegarde_mensuelle.Enabled = True
End If
End If
End Select
End If
End Sub