Bonjour
Je rejoins Menhir, que je salue, sur bien des points, à commencer par ta passivité, Noctis76, que tu n'accompagnes manifestement d'aucun effort de consultation de ton aide interne VBA.
Et tu parles vite de "condescendance" ... lorsque la soupe ne t'est pas servie, à la bonne température, avec la cuillère dans le métal de ton choix ...
Hé bien moi, Noctis76, je vais te répondre d'une manière telle que tu devras analyser ma réponse, ouvrir ton aide VBA, lire, te retrousser les manches, quoi... (bien peu, d'ailleurs, pour une affaire aussi simple et à la portée de débutants de chez débutant).
1) Cells, sans autre précision, est la totalité des cellules de la feuille active (le nombre max de lignes multiplié par le nombre max de colonnes). Cela en fait un sacré paquet.
2) ta boucle passe toutes les cellules en revue et pour chacune, cache son rang entier. Calcule donc combien de fois, par exemple, tu demandes de cacher le rang 1 (autant de fois que le nombre max de colonnes !)
3) idem lorsque tu veux tout montrer.
4) lorsqu'une plage a été spécifiée (appelons-la plage), on peut lui appliquer la méthode entirerow.hidden directement. Nul besoin de boucler.
5) on ne fait pas travailler inutilement Excel. Intéresse-toi à ce qu'est l'objet UsedRange.
Bonne chance.
Partager