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

Code pour masquer des lignes

  • Initiateur de la discussion Initiateur de la discussion Jiheme
  • 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 !

Jiheme

XLDnaute Accro
Bonsoir à tous

J'ai écrit un petit bout de code pour masquer des lignes en fonction de la présence ou non de "TERMINE" en colonne "AF" cette opération doit commencer à la ligne 10 et se terminé à la dernière ligne utilisée dans la colonne B qui est toujours renseignée.

Code:
Sub Masquer_Terminé()
Dim x As Integer
For x = 10 To Sheets("Contrats").Range("B65536").End(xlUp).Row
If Range("AF" & x) = "TERMINE" Then EntireRow.Hidden = True
End If
Next x
End Sub

Le problème est le suivant : cela fonctionne pour la ligne 10, mais plus après ! Je suppose que j'ai merdouillé dans la boucle, mais je ne vois pas où.

Merci

A+
 
Re : Code pour masquer des lignes

bonjour jiheme

A tester:

Code:
Sub Masquer_Terminé()
Dim x As Integer
For x = 10 To Sheets("Contrats").Range("B65536").End(xlUp).Row
If Range("AF" & x) = "TERMINE" Then Rows(x).Hidden = True
End If
Next x
End Sub
 
Re : Code pour masquer des lignes

Bonsoir Pierrejean, le Forum

Je me croyais sauvé quand j'ai vu ton pseudo, tu m'as déjà sorti de tant de galère, et bien pour une fois ça accroche, avec ton code j'ai en retour le message suivant :"End If sans bloc If".

Perso, je suis encore plus perdu!!!

A+
 
Re : Code pour masquer des lignes

Me semble que le "end if" est utilisé quand la condition du "then" est a la ligne,
donc comme la le "then" est dans la continuité du if, peut être enlever le "end if"

donc :
Sub Masquer_Terminé()
Dim x As Integer
For x = 10 To Sheets("Contrats").Range("B65536").End(xlUp).Row
If Range("AF" & x) = "TERMINE" Then Rows(x).Hidden = True
Next x
End Sub

ou
Sub Masquer_Terminé()
Dim x As Integer
For x = 10 To Sheets("Contrats").Range("B65536").End(xlUp).Row
If Range("AF" & x) = "TERMINE" Then
Rows(x).Hidden = True
End If
Next x
End Sub
 
Re : Code pour masquer des lignes

Bonsoir Skqgent, re à tous

Merci, effectivement la deuxième solution est OK (avec le Then à la ligne et le End If), autant dire que je ne sais pas pourquoi, mais je vais essayer de le retenir.

Merci beaucoup

A+
 
Re : Code pour masquer des lignes

Bonjour,

Je cherche la meme chose mais je n'arrive pas a adapter le code.

Voici ce que j'ai fait:

Private Sub CommandButton1_Click()

Dim x As Integer
For x = 10 To Sheets(2008).Range("B202").End(xlUp).Row
If Range("B" & x) = "Mascot 1" Then
Rows(x).Hidden = true
End If
Next x
End sub


Je veux pouvoir masquer sur ma feuille (2008) toutes les lignes ou le terme (texte) "Mascot 1" n'apparait pas en colonne B.
Dans mon code, je fais afficher les lignes avec "Mascot 1" mais je masque pas les autres....

Je suis bloqué....

Merci a vous 😉
 
Re : Code pour masquer des lignes

Je pense avoir trouvé....

C'était simple en fait:

Private Sub CommandButton1_Click()

Dim x As Integer
For x = 11 To Sheets("2008").Range("B202").End(xlUp).Row
Rows(x).Hidden = True
If Range("B" & x) = "Mascot 1" Then
Rows(x).Hidden = False
End If
Next x

End Sub


Par contre, y-a-t-il un quelconque moyen de limiter l'affichage des lignes a une plage donnée? je veux pas toucher aux colonnes après le K.

Merci
 
Dernière modification par un modérateur:
Re : Code pour masquer des lignes

Bonjour,
For x = 11 To Sheets("2008").Range("B202").End(xlUp).Row
Rows(x).Hidden = True
If Range("B" & x) = "Mascot 1" Then
Rows(x).Hidden = False

Il me semble qu'il n'est pas utile de masquer pour ensuite démasquer donc
For x = 11 To Sheets("2008").Range("B202").End(xlUp).Row
If Range("B" & x) <> "Mascot 1" Then
Rows(x).Hidden = true

Par contre, y-a-t-il un quelconque moyen de limiter l'affichage des lignes a une plage donnée? je veux pas toucher aux colonnes après le K.
Ce sont des lignes ou des colonnes que tu veux masquer, parce que l'on ne peut pas masquer un morceau de ligne !
A+
kjin
 
- 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

Discussions similaires

Réponses
3
Affichages
564
Réponses
7
Affichages
372
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…