Afficher/Masquer ligne selon résultat dans cellules référence

Bonjour à tous,

Le problème auquel je suis confronté actuellement sera, j'en suis sûr, réglé par un coup de baguette magique. (surtout grace à la compétence de l'un d'entre vous.

Situation:

J'ai un formulaire où des résultat doivent être inscrits dans différentes cellules. Selon le résultat choisi (0;1;2;3), je souhaite que mon formulaire s'adapte selon l'indication inscrite par l'utilisateur en affichant ou masquant des lignes.

Mon code actuel (essai non probant) - partie en gras:

Private Sub Worksheet_Change(ByVal Target As Range)

Application.EnableEvents = False

Range("AU16") = Now

Range("BJ16").Value = Format(ActiveWorkbook.BuiltinDocumentProperties("Last Author"))

'------------------------------------------------------------------------------------------------------------------

'Afficher ou masquer les lignes selon résultats dans cellules

'------------------------------------------------------------------------------------------------------------------ Résultat 1

'Afficher ou masquer premier ?l?ment

If BP20 = "3" Then

Rows("24:36").EntireRow.Hidden = True

If BP20 = "0" Then

Rows("24:36").EntireRow.Hidden = True

If BP20 = "2" Then

Rows("24:36").EntireRow.Hidden = True

If BP20 = "1" Then

Rows("24:36").EntireRow.Hidden = True

'------------------------------------------------------------------------------------------------------------------ Résultat 2

[b] 'Afficher ou masquer premier ?l?ment

If BU20 = "3" Then

Rows("38:50").EntireRow.Hidden = True

If BU20 = "0" Then

Rows("38:50").EntireRow.Hidden = True

If BU20 = "2" Then

Rows("38:50").EntireRow.Hidden = True

If BP20 = "1" Then

Rows("38:50").EntireRow.Hidden = True[/b]

'------------------------------------------------------------------------------------------------------------------

End If

Application.EnableEvents = True

End Sub

Résultat attendu:

Je souhaite un code évidemment plus simple (et qui fonctionne) pour pouvoir mettre plusieurs cellules de résultats en correspondances à plusieurs lignes à afficher/masquer selon le résultat choisi.

Merci d'avance pour vos lumières.

Cordialement

Willau

Bonjour,

'Afficher ou masquer premier ?l?ment
If Range("BP20") >= 0 And Range("BP20") <= 3 Then
  Rows("24:36").EntireRow.Hidden = True
End If
'------------------------------------------------------------------------------------------------------------------ Résultat 2
'Afficher ou masquer premier ?l?ment
If Range("BU20") >= 0 And Range("BU20") <= 3 Then
  Rows("38:50").EntireRow.Hidden = True
End If

Super ! Voilà de quoi avancer

J'ai une petite question pour le coup supplémentaire:

Est-il possible de lancer la macro au changement du résultat de la cellule sans passer par un

"Private Sub Worksheet_Change(ByVal Target As Range)"

mais en inscrivant la macro dans un module ?

Je m'explique, en inscrivant le code dans "Worksheet_Change" la macro est activée à chaque inscription dans ma feuille.

Je souhaite intégrer d'autres options qui ne sont pas activées si je rentre un date dans une autre cellule par exemple…

Cordialement

Willau

Re,

Ajoute après la ligne du Sub Change...

If Not Application.Intersect(Target, Range("La plage ou tu places les 0,1,2,3")) Is Nothing Then

Sans oublier le

End if 

avant le

End Sub
Rechercher des sujets similaires à "afficher masquer ligne resultat reference"