Ajoute tout de même la ligne surlignée que j'ai omise...
Function RD(pld As Range) As Integer
Dim c As Range, n%
Application.Volatile
For Each c In pld
If IsDate(c) Then
If c.Font.Color = vbRed Then n = n + 1
End If
Next c
RD = n
End Function
Elle sera recalculée lors du recalcul de la feuille, mais en effet un changement de couleur ne provoque pas un recalcul, mais si tu as un changement de valeur ou une validation dans une cellule cela pourra le déclencher...
Cordialement.