Si ligne vide masquer la ligne complète....

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 !

Hugerato

XLDnaute Nouveau
Bonjour,

j'ai un fichier dans lequel je voudrais masquer les lignes dont la première colonne débute par un 0. Je ne suis pas très familier avec le VBA, j'ai déjà montés des projets en marco sans plus. Avez-vous des suggestions afin d'y arriver?


Merci à l'avance.

Hugo
 
Re : Si ligne vide masquer la ligne complète....

bonjour Hugerato , skoobi
une version macro par contre le filtre c'est mieux

Code:
Sub es()
Dim i As Long
Application.ScreenUpdating = False
For i = 1 To Cells.Find("*", , , , , xlPrevious).Row
If Cells(i, 1) = 0 Then Cells(i, 1).EntireRow.Hidden = True
 Next
End Sub
 
Re : Si ligne vide masquer la ligne complète....

Bonjour,

merci beaucoup pour votre réponse. Mais comment dois-je appliquer ces codes. Je fais ALT-F11 puis... Je ne sais pas si c'est trop complexe à expliquer sur un forum. Sinon, j'aimerais connaître un site qui possède des explications sur l'intégration de code comme vous m'avez donné.

Merci encore pour votre aide.
 
Re : Si ligne vide masquer la ligne complète....

Bonjour,

merci beaucoup pour votre réponse. Mais comment dois-je appliquer ces codes. Je fais ALT-F11 puis... Je ne sais pas si c'est trop complexe à expliquer sur un forum. Sinon, j'aimerais connaître un site qui possède des explications sur l'intégration de code comme vous m'avez donné.

Merci encore pour votre aide.

envoye nous ton fichier ou du moins un condenser, pour que l'on puisse t'aider, ca sera plus clair a comprendre pour toi si t as l'exemple sous les yeux 😉

cordialement

Poto
 
Re : Si ligne vide masquer la ligne complète....

Bonjour Hugerato, laetitia, skoobi, poto,

Ton titre:
Si ligne vide masquer la ligne complète....

et ta demande:
je voudrais masquer les lignes dont la première colonne débute par un 0

ne veulent pas dire tout à fait la même chose. Faut-il masquer la ligne:
1) quand elle est vide (le titre)
2) quand le premier caractère de la première cellule de la ligne est "0" (ce que semble signifier ta demande)
3) quand la valeur de la première cellule de la ligne est 0 (ce que semblent avoir compris skoobi et laetitia)

😕 😕 😕

Effectivement, un fichier serait plus clair

Cordialement,
Guiv
 
Re : Si ligne vide masquer la ligne complète....

Bonjour à tous,

j'ai essayé de mettre mon fichier sur le forum, mais il et trop lourd, voici donc un print screen. Les informations présentées découle d'une succession de formule «=si(....;*Vrai...; Faux...)».

Merci pour votre aide!!!!

Hugo
 

Pièces jointes

  • Image exemple.jpg
    Image exemple.jpg
    52.8 KB · Affichages: 247
  • Image exemple.jpg
    Image exemple.jpg
    52.8 KB · Affichages: 224
  • Image exemple.jpg
    Image exemple.jpg
    52.8 KB · Affichages: 408
Dernière édition:
Re : Si ligne vide masquer la ligne complète....

Bonsoir,

ALT+F11 puis dans la fenêtre de l'éditeur de macro:

Menu Insertion/Module

Et dans la fenêtre de code tu colles la macro ci-dessous, plus rapide qu'une boucle sur de long tableaux .
Code:
[COLOR=blue]Sub[/COLOR] CacherDiffZero()
    [COLOR=blue]Dim[/COLOR] c [COLOR=blue]As[/COLOR] Range
    [COLOR=blue]Dim[/COLOR] plage [COLOR=blue]As[/COLOR] Range
    [COLOR=blue]With[/COLOR] Range([I]"A17"[/I]).CurrentRegion
        [COLOR=green]'Déterminer si [COLOR=blue]on[/COLOR] trouve la valeur 0 (zéro) en colonne 1 de la région[/COLOR]
        [COLOR=blue]If[/COLOR] [COLOR=blue]Not[/COLOR] IsError(Application.Match(0, .Columns(1), 0)) [COLOR=blue]Then[/COLOR]
            [COLOR=green]'si oui renvoyer la première cellule contenant 0[/COLOR]
            [COLOR=blue]Set[/COLOR] c = .Range([I]"A"[/I] & Application.Match(0, .Columns(1), 0))
            [COLOR=blue]On[/COLOR] [COLOR=blue]Error[/COLOR] [COLOR=blue]Resume[/COLOR] [COLOR=blue]Next[/COLOR]
            [COLOR=green]'Renvoyer la plage de cellules ne contenant pas zéro[/COLOR]
            [COLOR=blue]Set[/COLOR] plage = .Columns(1).ColumnDifferences(c)
            [COLOR=green]'Si [COLOR=blue]on[/COLOR] obtient une plage ne contenant pas zéro[/COLOR]
            [COLOR=blue]If[/COLOR] [COLOR=blue]Not[/COLOR] plage [COLOR=blue]Is[/COLOR] [COLOR=blue]Nothing[/COLOR] [COLOR=blue]Then[/COLOR]
                [COLOR=green]'Commencer par tout cacher[/COLOR]
                .EntireRow.Hidden = [COLOR=blue]True[/COLOR]
                [COLOR=green]'Afficher les lignes contenant zéro en première colonne[/COLOR]
                plage.EntireRow.Hidden = [COLOR=blue]False[/COLOR]
            [COLOR=blue]End[/COLOR] [COLOR=blue]If[/COLOR]
        [COLOR=blue]End[/COLOR] [COLOR=blue]If[/COLOR]
    [COLOR=blue]End[/COLOR] [COLOR=blue]With[/COLOR]
[COLOR=blue]End[/COLOR] [COLOR=blue]Sub[/COLOR]

Où Range("A17") est la première cellule du tableau.

Mais un filtre automatique reste la meilleur solution.

Pour faire un fichier exemple moins lourd il suffit de copier coller tes données dans un nouveau classeur à une feuille.


A+
 
Dernière modification par un modérateur:
Re : Si ligne vide masquer la ligne complète....

Merci Hasco,

je crois avoir fait exactement se que vous m'avez dit, par contre le macro ne s'active pas du moins je ne suis pas capable de le mettre à exécution. Encore une fois je demande votre aide.

Merci d'avance.

Hugo
 
Re : Si ligne vide masquer la ligne complète....

Re,

Une fois de retour sur la feuille de travail, lancer la macro par Alt+F8

Si cela ne va pas il te faudra faire un fichier exemple et le joindre.

A+
 
Dernière modification par un modérateur:
Re : Si ligne vide masquer la ligne complète....

Bonsoir,

Non pas par courriel.

Tu ne dis pas ce que tu penses de la solution par filtre automatique. C'est simple et rapide.

Voici la macro avec un tableau bidon en A17
La lancer par Alt+F8



A+
 
Dernière modification par un modérateur:
Re : Si ligne vide masquer la ligne complète....

Voici mon fichier comme tu peux le constater quand tu entres une données dans la cellule M95 les données apparaissent en dans le dossier du haut...
Je crois que vous serez en mesure de me suivre maintenant.

Merci encore.

Hugo
 

Pièces jointes

Re : Si ligne vide masquer la ligne complète....

Bonjour Hugo,

Voici ton fichier à dézipper avec le filtre mis en place et explications dans la feuille.

tu n'as plus qu'à saisir tes quantités puis cliquer sur le bouton 'Réappliquer' de l'onglet 'Données' Groupe 'Filtrer et trier'.

A+
 
- 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
5
Affichages
268
Retour