Bonjour
3 erreurs:
tu boucle sur des lignes et tu masques des colonnes
cells(ligne, colonne) et non l'inverse
cells(1,1) correspond à la cellule A1 dans ton cas c'est cells(1,3)
ci dessous ta macro modifiée
Sub Masquer_Jour()
Dim Num_Li As Byte
For Num_Li = 37 To 39 ' Boucle sur les cellules des jours 29, 30 et 31
Rows(Num_Li).Hidden = False
If Month(Cells(Num_Li, 1)) > Cells(1, 3) Then
Rows(Num_Li).Hidden = True
End If
Next
Range("B9:H39").ClearContents 'Supprime le contenu dans les cellules
End Sub
A+ François