Cacher des lignes sur chaque worksheet avec SpecialCells et End(xlUp)

FBRC79

XLDnaute Nouveau
Je souhaite appliquer une fonction sur toutes les worksheets de mon workbook pour cacher les lignes ayant pour valeur de la première colonne '1' (utilisation de SpecialCells).

Le code suivant fonctionne :

Sub HideSelectedRows()
For Each WS In Worksheets
On Error Resume Next
WS.Range("A1", "A1000").SpecialCells(xlCellTypeConstants, 1).EntireRow.Hidden = True
Next
End Sub

Mais si je remplace WS.Range("A1", "A1000") par WS.Range("A1", Range("A1000").End(xlUp)), la fonction n'est appliquée que sur la worksheet courante, et pas sur les autres.

La raison pour laquelle je veux faire ce changement est la performance de l'opération sur de nombreuses worksheets dont je ne connais pas a priori le nombre de lignes.

Des idées?
 

ROGER2327

XLDnaute Barbatruc
Re : Cacher des lignes sur chaque worksheet avec SpecialCells et End(xlUp)

Bonjour FBRC79



Essayez ceci :
Code:
WS.Range(WS.Range("A1"), WS.Range("A1000").End(xlUp))



ROGER2327
#6133


Jeudi 5 Tatane 139 (Saint Arsouille, patricien - fête Suprême Quarte)
30 Messidor An CCXX, 6,6392h - chalémie
2012-W29-3T15:56:02Z
 

Discussions similaires

Réponses
6
Affichages
184
Réponses
1
Affichages
216

Statistiques des forums

Discussions
312 697
Messages
2 091 069
Membres
104 750
dernier inscrit
Chukky