Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$P$1" Then
Application.ScreenUpdating = False
Range("A5:C29").ClearContents
x = Weekday(CDate("01/" & Target.Value & "/" & [V1])) - 2
ligne = x + 5 ' Ligne pour le 1er du mois
x = CDate("01/" & Target.Value & "/" & [V1])
mois = Month(x) ' Mois demandé
While Month(x) = mois ' Tant que mois=mois demandé
If Month(x) = mois Then
If Weekday(x) <> 1 And Weekday(x) <> 7 Then
Range("A" & ligne) = Format(x, "dddd dd/mm/yyyy")
ligne = ligne + 1
End If
End If
x = x + 1
Wend
End If
End Sub