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

afficher une ligne masquer

  • Initiateur de la discussion Initiateur de la discussion David59
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

D

David59

Guest
Bonjour le forum

Je me demande s’il est possible d’enlever le masque d’une ligne en fonction de la ligne précédente😕

Ex: je voudrais quand j’écris dans la case "E" où "I" de la ranger 11 que la ranger N° 12 ne soit plus masquer

Merci d’avance David@+
 
Re : afficher une ligne masquer

je voudrais que la ligne 10 ne soit plus masquer à partir qu"il y a et nom ou un chiffre dans un des cases de la ligne 9

 

Pièces jointes

  • Sans titre.jpg
    31 KB · Affichages: 201
  • Sans titre.jpg
    31 KB · Affichages: 200
Re : afficher une ligne masquer

Bonjour David, nobleza,

A placer dans le code de la feuille (clic droit sur l'onglet et Visualiser le code) :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Rows(Target.Row + 1).Hidden = Application.CountA(Rows(Target.Row)) = 0
End Sub

Edit : cette macro affiche ou masque. Si vous voulez seulement afficher, remplacer la 2ème ligne par :

Code:
If Application.CountA(Rows(Target.Row)) Then Rows(Target.Row + 1).Hidden =False

A+
 
Dernière édition:
Re : afficher une ligne masquer

bonjour job75

ton code vba
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Rows(Target.Row + 1).Hidden = Application.CountA(Rows(Target.Row)) = 0
End Sub

repond exactement à ma question, je me demande si cela est possible maintenant de cibler que quelques lignes par exemple si je voulais que les lignes de 2 à 9 et de 11 à20😕

encore merci 🙂
david@+
 
Re : afficher une ligne masquer

Bonjour David, le forum,

La question n'est pas très très claire, mais on peut essayer cette macro :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("2:9,11:20")) Is Nothing Then Exit Sub
Dim sel As Range
If Target.Count = 1 Then Set sel = Target.Offset(Application.CountA(Target))
For Each Target In Range("2:9,11:20").Rows
Target.Offset(1).Hidden = Application.CountA(Target) = 0
Next
If Not sel Is Nothing Then sel.Select
End Sub

Le 1er test If n'est pas indispensable, mais c'est mieux.

Cela convient-il ? Edit : il faut peut-être remplacer :20 par :19...

A+
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

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