Re : Affichage format date
Bonsour® StrikeBEH, Roland_M
😎
en plus compact ...🙄
[Highlight=VB]Sub Macro1()
Dim i As Integer, Ddate As Long, Ddebut As Long, Dfin As Long, PAQ As Long
Dim An As Integer, Dstat As String, Dcolor As Long
An = Year(Date)
PAQ = Evaluate("=DATE(" & An & ",3,29.56+0.979*MOD(204-11*MOD(" & An & ",19),30)- WEEKDAY(DATE(" & An & ",3,28.56+0.979*MOD(204-11*MOD(" & An & ",19),30))))")
Ddebut = DateSerial(An, Month(Date), 1)
Dfin = DateSerial(An, Month(Date) + 1, 0)
Range("B7:C37").ClearContents
i = 1
For Ddate = Ddebut To Dfin
'Range("A" & i + 6) = Ddate
Range("B" & i + 6).Font.Size = 10
Range("B" & i + 6) = Format(Ddate, "dd") & Mid("DLMMJVS", Weekday(Ddate), 1)
Select Case Ddate
Case DateSerial(An, 1, 1) _
, DateSerial(An, 5, 1) _
, DateSerial(An, 5, 8) _
, DateSerial(An, 7, 14) _
, DateSerial(An, 8, 15) _
, DateSerial(An, 11, 1) _
, DateSerial(An, 11, 11) _
, DateSerial(An, 12, 25) _
, PAQ _
, (PAQ + 1) _
, (PAQ + 39) _
, (PAQ + 49) _
, (PAQ + 50)
Range("C" & i + 6) = "JF"
Range("B" & i + 6).Interior.Color = vbRed
Range("C" & i + 6).Interior.Color = vbRed
Case Else
Select Case Weekday(Ddate)
Case Is = 1: Dstat = "CR": Dcolor = RGB(192, 192, 192)
Case Is = 7: Dstat = "CC": Dcolor = RGB(192, 192, 192)
Case Else : Dstat = "JT": Dcolor = xlNone
End Select
Range("C" & i + 6) = Dstat
Range("B" & i + 6).Interior.Color = Dcolor
Range("C" & i + 6).Interior.Color = Dcolor
End Select
i = i + 1
Next Ddate
End Sub[/code]