Cacher une ligne à 0 sur une autre feuille

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

cdriess

XLDnaute Nouveau
Bonjour a tous,

Ce forum a vraiment l'air dynamique et j'espère que vous connaissez une solution à mon problème:

En réalité, je tente de cacher les lignes à 0. Ce n'est pas très compliqué allez vous me répondre, il suffit de mettre le code suivant:

Sub Macro1()
'
' Macro1 Macro
'
Dim I As Long
Dim Plage As Range
Set Plage = Range("C7:C" & Range("C7").End(xlDown).Row)
For I = Plage.Cells.Count To 1 Step -1
If Plage.Cells(I).Value = 0 Then
Plage.Cells(I).EntireRow.Hidden = True
End If
Next
'
End Sub

Ok, vais-je vous répondre, mais le problème est que je voudrais faire celà pour une feuille qui n'est pas active. Je me trouve donc sur la feuille 1 et voudrais le faire sur la feuille 2. Avez-vous une solution?

Un grand merci d'avance.
 
Re : Cacher une ligne à 0 sur une autre feuille

Bonjour cDriess

Pour toi une ligne à 0 c'est une ligne dont toutes les cellules (256) contiennent des valeurs=0 ou des ligne vides? Elles ne se traitent pas forcément pareilles.

A bientôt avec plus de précisions.
 
Re : Cacher une ligne à 0 sur une autre feuille

Ballmaster, merci pour cette info, mais c'est justement ce que je ne veux pas faire, afficher la page sur laquelle je voudrais masquer les lignes à 0.

Hasco,

en réalité, je voudrait masquer les lignes dont une des cellules est égale à 0, dans mon exemple, si la cellule C d'une ligne est égale à 0, je voudrais masquer l'entièreté de la ligne.
 
Re : Cacher une ligne à 0 sur une autre feuille

Bonjour



Avec un filtre automatique (en VBA)

Application.ScreenUpdating = False
Sheets("Feuil2").Activate
Range(Range("C1"), Range("C65536").End(xlUp)).AutoFilter Field:=1, Criteria1:=">0"
Sheets("Feuil1").Activate
Application.ScreenUpdating = True
En reprenant ta macro
Sub Macro1_bis()
Dim I As Long
For I = Sheets("XXX").Range("C65536").End(xlUp).Row To 7 Step -1
If Sheets("XXX").Cells(I, 3).Value = 0 Then
Sheets("XXX").Cells(I, 3).EntireRow.Hidden = True
End If
Next
End Sub

Remplacer le XXX par le nom de la feuille désirée.
 
Dernière édition:
Re : Cacher une ligne à 0 sur une autre feuille

Staple 1600,

Merci, ca fonctionne déjà mieux... par contre, j'ai des cellules qui sont fusionnées sur B et sur C et ca me les supprime, est-ce qu'il y a une possibilité de changer celà? (ces cellules ne sont pas égales à 0)
 
- 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

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
247
Réponses
2
Affichages
235
Retour