Code VBA pour masquer une feuille selon liste déroulante

Bonjour a tous,

N'etant absolument pas familier avec le VBA, je souhaiterais néanmoins créer une fonction sur l'un de mes fichier et le VBA semble est la seule solution. Je sollicite donc une fois de plus vos connaissances! La demande est assez simple je pense:

Sur la feuille 1 "Cas A", il y a une liste déroulante avec 2 choix "Version A" et "Version B"
Je souhaiterais que la feuille nommée "Cas B" s'affiche uniquement lorsque "Cas B" est sélectionné.
Lorsque la liste déroulante est sur "Version A", la feuille "Cas B" est masquée.

En vous remerciant par avance,
Cordialement

Seb

vba

Bonjour,

Voici un code à placer dans le module de la feuille "Cas A" :

private sub worksheet_change(byval target as range)
set r = intersect(target, range("B3"))
if not r is nothing then sheets("Cas B").visible = r.value = "Version B"
end sub

Elle se déclenche à chaque changement en B3.

Cdlt,

Bonjour,

Une petite variante.
Cdlt.

6seb-drz.xlsm (14.99 Ko)
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$3" Then
        Worksheets("Cas B").Visible = IIf(Target.Value = "Version B", -1, 0)
    End If
End Sub

Bonjour,

Sujet (déjà!) clôturé!
Merci pour votre aide et votre rapidité de réponse!
Bonne journée à vous

Seb

Rechercher des sujets similaires à "code vba masquer feuille liste deroulante"