Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Afficher les feuilles selon le contenu d'une cellule

chaelie2015

XLDnaute Accro
Bonjour Forum
je souhaite afficher les feuilles selon le contenu de la cellule H3
si la cellule H3 = N-2 donc afficher les onglets "N","N-1" et "N-2" seulement la feuille"N-3" restera masquée
et ainsi de suite.
ce code est tres lent
Private Sub Worksheet_Change(ByVal Target As Range)
Sheets("Niveau N").Visible = False
Sheets("Niveau N-1").Visible = False
Sheets("Niveau N-2").Visible = False
Sheets("Niveau N-3").Visible = False
If [H3] = "N" Then
Sheets("Niveau N").Visible = True
Sheets("Niveau N-1").Visible = False
Sheets("Niveau N-2").Visible = False
Sheets("Niveau N-3").Visible = False
Else

End If

If [H3] = "N-1" Then
Sheets("Niveau N").Visible = True
Sheets("Niveau N-1").Visible = True
Sheets("Niveau N-2").Visible = False
Sheets("Niveau N-3").Visible = False
Else

End If

If [H3] = "N-2" Then
Sheets("Niveau N").Visible = True
Sheets("Niveau N-1").Visible = True
Sheets("Niveau N-2").Visible = True
Sheets("Niveau N-3").Visible = False
Else

End If

If [H3] = "N-3" Then
Sheets("Niveau N").Visible = True
Sheets("Niveau N-1").Visible = True
Sheets("Niveau N-2").Visible = True
Sheets("Niveau N-3").Visible = True
Else

End If
End Sub

Salutations
 

Pièces jointes

  • CHARLIE afficher les onglet selon cellule.xlsx
    11.3 KB · Affichages: 7
Dernière édition:

shinozak

XLDnaute Occasionnel
Bonjour essaie ça,
VB:
Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("H3")) Is Nothing Then
Dim Ws As Worksheet


For Each Ws In Sheets
Ws.Visible = True
Next Ws

If Range("H3") = "N-2" Then
Sheets("Niveau N-3").Visible = False

ElseIf Range("H3") = "N-1" Then
Sheets("Niveau N-2").Visible = False
Sheets("Niveau N-3").Visible = False


ElseIf Range("H3") = "N" Then
Sheets("Niveau N").Visible = False
Sheets("Niveau N-1").Visible = False
Sheets("Niveau N-2").Visible = False
Sheets("Niveau N-3").Visible = False


End If
End If
End Sub
 

Staple1600

XLDnaute Barbatruc
Bonsoir le fil, shinozak

[aparté]
Lu dans la section dédiée à l'utilisation du forum" à dit:
(mis à jour le 17/1/2020)
L'idée n'est pas de demander aux demandeurs de signaler systématiquement que le problème semble résolu, cela reste leur choix et ne doit pas devenir une contrainte.
[/aparté]
 
Dernière édition:

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…