Bonjour
Un essai à tester. Te convient-il ?
Option Explicit
Dim tablo, tabloR(), f As Worksheet
Dim i&
Sub TesDuMois()
Set f = Sheets("Planif Mensuelle")
tablo = f.Range("B1").CurrentRegion
ReDim tabloR(1 To UBound(tablo, 1) - 1, 1 To 1)
For i = 2 To UBound(tablo, 1)
If Year(tablo(i, 1)) = Year(Date) _
And Month(tablo(i, 1)) = Month(Date) Then
tabloR(i - 1, 1) = 1
Else
tabloR(i - 1, 1) = 0
End If
Next i
f.Range("E2").Resize(UBound(tabloR, 1), 1) = tabloR
End Sub
Option Explicit
Dim plage As Range
Private Sub Worksheet_Change(ByVal Target As Range)
Set plage = Range("B2:B" & Range("B" & Rows.Count).End(xlUp)(2).Row)
If Not Intersect(Target, plage) Is Nothing Then
Call TesDuMois
End If
End Sub
Bye !