Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Not Intersect(Target, [Article_Number]) Is Nothing Or _
Not Intersect(Target, [OuiNon]) Is Nothing Then
Application.ScreenUpdating = False
Démasque
If Target <> "" And [OuiNon] = "OUI" Then Masque1750 Else Masque5185
End If
Application.ScreenUpdating = True
End Sub
Sub Masque1750()
Dim L%
Rows("17:50").Hidden = False
Rows("51:85").Hidden = True
For L = 50 To 17 Step -1
If Cells(L, "A") = "-" Then Rows(L).Hidden = True
If Cells(L, "C") = "-" Then Rows(L).Hidden = True
Next L
End Sub
Sub Masque5185()
Dim L%
Rows("17:50").Hidden = True
Rows("51:85").Hidden = False
For L = 85 To 51 Step -1
If Cells(L, "A") = "-" Then Rows(L).Hidden = True
If Cells(L, "C") = "-" Then Rows(L).Hidden = True
Next L
End Sub
Sub Démasque()
Rows("1:" & Range("C200").End(xlUp).Row).Hidden = False
End Sub