Masquer les lignes des cellules dont la valeur =0

P

Patrick

Guest
Bonjour,

Je découvre ce forum qui m'a l'air très sympa.
Ma question est la suivante :

Je sélectionne des celulles (disons A1:A20) qui peuvent contenir soit des valeurs numériques, soit des lettres, soit des cellules vides ou soit des cellules nulles (dont la valeur =0)

Je voudrais une macro qui masque dans ma sélection toutes les lignes des cellules nulles.

J'ai fait une macro "recherche par col les cellules dont valeur =0"; "masquer la ligne"; "recherche suivante"; "masquer la ligne"; etc....

Seulement mes plages de cellules peuvent être de différentes tailles, donc la macro peut être trop courte ou trop longue.

Merci d'avance

Patrick
 
@

@+Thierry

Guest
Bonjour Patrick

En premier lieu => Welcome to XLD !!!

Si tu parles bien de tester cellule dans la Colonne A uniquement quelque soit la quantité de lignes de cette colonne (ici jusqu'à 32767) sinon tu changes les déclaration de variable de "Integer" en "Long" et tu pourras aller jusqu'en bas de la feuille (65536)

Sub Patrick ()
Dim L as integer
Dim i as integer

L = Sheets("feuilToto").Range("A32767").end(xlup).row
For i = 1 to L
if Range("" & L).EntireRow.Hidden = True
next i
End Sub

vite fait sans VBE, juste avant d'aller casser la croute

Bon App
@+Thierry
 
@

@+Thierry

Guest
oups j'avais trop faim j'ai oublier la condition !!!

Mort de rire :)))))))))

Sub Patrick ()
Dim L as integer
Dim i as integer

L = Sheets("feuilToto").Range("A32767").end(xlup).row
For i = 1 to L
if Range("A" & L).Value = 0 then
Range("A" & L).EntireRow.Hidden = True
next i
End Sub

lol
@+Thierry

PS la solution de Pyrof est bien aussi, par contre, il faut faire la sélection de la plage à couvrir au préalable, tandis que celle ci agit toute seule. En fait tout dépend de ce que tu veux faire...
 
P

Patrick

Guest
Cher Pyrof,

Merci d'avoir répondu si vite, ce site est vraiment super...

Ta solution est presque parfaite, sauf qu'elle me masque aussi les cellules vides alors que je voudrais ne masquer que les cellules dont la valeur = 0

Je rêverais d'apprendre à programmer mais mon boulot ne m'en laisse pas le temps vraiment. Je suis directeur de production sur des téléfilms et je travaille à améliorer mon programme de devis...

Merci encore, et tant mieux si tu peux améliorer ta solution

Amicalement,

Patrick
 
P

Patrick

Guest
Tout d'abord merci Thierry, et merci le site. 2 réponses en 15 minutes c'est génial.

Pour répondre à ta question il faut que je sélectionne ma plage de cellules avant de lancer la macro (ou du moins la colonne dans laquelle se trouvent ces cellules.

Quand je lance ta macro elle me dit "erreur de compilation : next sans for.

Je rêverais d'apprendre à programmer mais mon boulot ne m'en laisse pas le temps vraiment. Je suis directeur de production sur des téléfilms et je travaille à améliorer mon programme de devis...

La solution de Pyrof est presque parfaite, sauf qu'elle me masque aussi les lignes dons les cellules sont vides,et je ne voudrais masquer que celles qui ont la valeur 0.

Encore merci

Amicalement

Patrick
 
@

@+Thierry

Guest
Ah ben tant mieux c'est arrangé alors...


J'ai été complètement out sur ce fil !! J'ai oublié le "End if" en haut de toute manière j'avais bien indiqué "vite fait sans VBE, juste avant d'aller casser la croute"... et c'est vrai qu'écrire du code directement dans ces posts est franchement un coup à zapper un truc...

Mais bon Pyrof s'est très bien débrouillé et t'a trouvé une bonne solution!

Allez bon aprèm et Welcome to XLD Patrick

@+Thierry


(dim i as range)
 
@

@+Thierry

Guest
Re Bonsoir

Très bien aussi :)
(ton autre solution, testée aussi par moi-même, marche très bien également Pirof... Mais idem que plus haut...
(faut toujours un mai, juin, juillet pour arriver en été...)

si tu utilises Option Explicit (recommandé)

dim i as range) (bis répétita)

Mais tu as l'air de ne pas aimer les déclarations !
:)

Bonne Soirée à toi, à Patrick et au forum
@+Thierry
 
P

Patrick

Guest
Super cette dernière solution testée.

Elle me permet (j'allais poser la question) de masquer les lignes pour n'importe qu'elle valeur numérique ou non.
Si je remplace text = "10" par text = "15" ça me cache toutes les lignes dont la valeur des cellules est 5, si je mets "1P", toutes les lignes dont la cellule ="P".

D'une simplicité redoutable et je suis sur utile à beaucoup.

Encore merci

Patrick
 

Discussions similaires

Réponses
2
Affichages
284
Réponses
14
Affichages
470

Statistiques des forums

Discussions
314 019
Messages
2 104 649
Membres
109 092
dernier inscrit
ahm74