Masquer des lignes

Bonjour

Je suis à la recherche d'une solution en VBA, pour masquer des lignes suivant un index dans une colonne précise.

Dans la colonne E, les cellules sont incrémentées de 01 à15.

Je voudrais masquer les lignes dont les cellules sont de "08 à 15".

Je vous joints un fichier.

Merci de votre aide.

Cdt.

12masque-lignes.xlsb (9.57 Ko)

Bonjour Fred,

Je ne comprends pas ce que tu veux faire.

Les lignes à masquer ont-elles un rapport avec les "index" de la colonne E.

Peux-tu donner un ex de se que tu veux faire du style :

Si Index = 04 => on masque les lignes 08 à 15 en précisant pourquoi 8 à 15 et si index = 05 qu'est-ce que l'on masque ?...

Merci

Bonjour

Je souhaite simplement masquer toutes les lignes, par un bouton, dont dans la colonne E les valeurs de cellules sont entre 08 et 15.

Merci de ta réponse.

Bonjour Fred56,

Je te retourne ton fichier modifié.

Ctrl e ➯ ça masque les lignes adéquates

Ctrl a ➯ ça affiche toutes les lignes

Alt F11 pour voir les 2 macros, puis revenir sur Excel

Si besoin, tu peux me demander une adaptation.

Merci de me dire si ça te convient.

Cordialement

12masque-lignes.xlsb (16.53 Ko)

Merci beaucoup

cela fonctionne bien.

Est ce que je peux affecter le code à un bouton?

Peux tu m'expliquer le fonctionnement du code si cela ne te dérange pas.

Encore merci

Bonjour

voila une autre peux être plus simple a comprendre

Sub Essai1()
Const Plig& = 23
Dim Dlig&, Lig&
Rows.Hidden = False
Dlig = Cells(Rows.Count, 5).End(xlUp).Row
  For Lig = Plig To Dlig
      Select Case Val(Cells(Lig, 5))
       Case 8 To 15
          Rows(Lig).Hidden = True
      End Select
  Next Lig
End Sub

A+

Maurice

Je te propose ci-dessous une nouvelle version du fichier : j'ai mis 2 boutons à la place,

et il n'y a plus les 2 raccourcis clavier Ctrl e et Ctrl a

La macro CmdShow_Click() contient cette seule instruction : Rows.Hidden = False

qui affiche toutes les lignes ; elle est appelée par un clic sur le bouton « Afficher ».

La macro CmdMask_Click est appelée par le bouton « Masquer » ; la boucle For .. Next

parcourt toutes les lignes, de plig à dlig (première à dernière ligne) ; à propos,

j'ai oublié de préciser que plig est une constante qui vaut 23 ; à adapter si besoin ;

par contre dlig est trouvé automatiquement.

Quand une ligne qui contient 8 en colonne E est rencontrée, ça masque de cette ligne

à la même ligne + 7 avec : Rows(lig & ":" & lig + 7).Hidden = True

11masque-lignes.xlsb (22.44 Ko)
Rechercher des sujets similaires à "masquer lignes"