Bonjour à tous,
Je voudrais modifier le code VBA suivant pour que l'action ne se passe uniquement que lorsque la cellule D4 change de Yes à No et inversement et non à chaque fois que quelque chose d'autre change dans la feuille, ce qui se passe actuellement. Je ne dois pas utiliser la bonne fonction j'imagine.
Merci
Alain
Private Sub Worksheet_Change(ByVal Target As Range)
Select Case Range('D4').Value
Case 'NO'
Rows('8:13').Select
Selection.EntireRow.Hidden = False
Rows('164:172').Select
Selection.EntireRow.Hidden = False
Rows('16:17').Select
Selection.EntireRow.Hidden = True
Rows('156:163').Select
Selection.EntireRow.Hidden = True
Case 'YES'
Rows('16:17').Select
Selection.EntireRow.Hidden = False
Rows('156:163').Select
Selection.EntireRow.Hidden = False
Rows('8:13').Select
Selection.EntireRow.Hidden = True
Rows('164:172').Select
Selection.EntireRow.Hidden = True
End Select
End Sub
Je voudrais modifier le code VBA suivant pour que l'action ne se passe uniquement que lorsque la cellule D4 change de Yes à No et inversement et non à chaque fois que quelque chose d'autre change dans la feuille, ce qui se passe actuellement. Je ne dois pas utiliser la bonne fonction j'imagine.
Merci
Alain
Private Sub Worksheet_Change(ByVal Target As Range)
Select Case Range('D4').Value
Case 'NO'
Rows('8:13').Select
Selection.EntireRow.Hidden = False
Rows('164:172').Select
Selection.EntireRow.Hidden = False
Rows('16:17').Select
Selection.EntireRow.Hidden = True
Rows('156:163').Select
Selection.EntireRow.Hidden = True
Case 'YES'
Rows('16:17').Select
Selection.EntireRow.Hidden = False
Rows('156:163').Select
Selection.EntireRow.Hidden = False
Rows('8:13').Select
Selection.EntireRow.Hidden = True
Rows('164:172').Select
Selection.EntireRow.Hidden = True
End Select
End Sub