Masquer ou afficher des lignes sous condition

Twixman Messages postés 8 Statut Membre -  
cs_Le Pivert Messages postés 8437 Statut Contributeur -
Bonjour,
je cherche à réaliser un tableau qui afficherait seulement les lignes concernant le jour inscrit en "E5".
J'aimerais, si c'est possible, que le déclencheur soit le mot"masquer" en colonne B, qui est le résultat d' une formule (=si).
Et tous ça automatiquement ( sans bouton)
Merci de votre aide.
https://www.cjoint.com/c/ICipQGFgXCy


Configuration: Windows / Chrome 72.0.3626.121
A voir également:

1 réponse

cs_Le Pivert Messages postés 8437 Statut Contributeur 729
 
Bonjour,

a mettre dans le module de la feuille 1

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(Target, Range("B:B")) Is Nothing Then
If Target.Value = "Masquer" Then
 Rows(Target.Row & ":" & Target.Row).EntireRow.Hidden = True
   Else
   Rows(Target.Row & ":" & Target.Row).EntireRow.Hidden = False
End If
End If
End Sub


mais pour rétablir c'est manuellement ou avec une macro?

Selection de toute la Feuille clic droit Afficher

Ou

 Sub Retablir()
With Sheets("Feuil1").Cells
.EntireRow.Hidden = False
End With
End Sub



0
Twixman Messages postés 8 Statut Membre
 
Bonjour Le Pivert,
Merci.
C'est exactement ça.
Merci, merci pour ton aide.
Bonne journée.
0
cs_Le Pivert Messages postés 8437 Statut Contributeur 729
 
il y a aussi cela qui changera avec la cellule E5:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(Target, Range("E5")) Is Nothing Then
Application.ScreenUpdating = False
For_X_to_Next_Ligne
Application.ScreenUpdating = True
End If
End Sub
Sub For_X_to_Next_Ligne()
Dim FL1 As Worksheet, NoCol As Integer
Dim NoLig As Long, Var As Variant
    Set FL1 = Worksheets("Feuil1")
    NoCol = 2 'lecture de la colonne B
    For NoLig = 1 To Split(FL1.UsedRange.Address, "$")(4)
        Var = FL1.Cells(NoLig, NoCol)
       If Var = "Masquer" Then
 Rows(NoLig & ":" & NoLig).EntireRow.Hidden = True
   Else
   Rows(NoLig & ":" & NoLig).EntireRow.Hidden = False
End If
    Next
    Set FL1 = Nothing
End Sub


@+ Le Pivert
0