Hello,
Une proposition :
fonction à mettre dans un module standard :
Function masque(CelluleVide As Range, ValeurCellule As Long)
If CelluleVide.Value2 = ValeurCellule Then Rows(CelluleVide.Offset(-1).Row & ":" & CelluleVide.Offset(1).Row).EntireRow.Hidden = True
End Function
Appel de la fonction dans l'événement change :
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("F39")) Is Nothing Then Call masque(Range("F39"), 0)
If Not Application.Intersect(Target, Range("F48")) Is Nothing Then Call masque(Range("F48"), 10)
End Sub
L'appel ci-dessus masque les lignes 38,39,40 si la valeur de F39 = 0
masque les lignes 47,48,49 si la valeur de F48 = 10
Tu peux donc paramétrer la valeur de la cellule comme tu veux.