Limites lignes pour un filtre automatique

Le
Pounet95
Bonjour,
XL2000 et Windows2000

Dans une feuille comprenant quelques 17250 lignes, dont la moitié sont vides
( import texte ).
Pour supprimer les lignes dont la cellule en colonne B est vide, dans un
premier temps, j'utilise un filtre automatique puis je tente ( tout ça en
VBA ) de sélectionner la plage résultante pour la supprimer :

Set LignesVisibles = Range(Cells(
ligneDeb,colDeb),Cells(ligneFin,ColFin),SpecialCells(xlTypeVisible)
LignesVisibles.Select
Selection.Delete

Le message généré est alors :
Microsoft Excel ne peut créer ni utiliser la plage de données car celle-ci
est trop complexe. Essayez les solutions suivantes :
- Utilisez des données qui peuvent être sélectionnées dans un rectangle
contigü,
- Utilisez des données de la même feuille

Comme je suis dans le cas 2 ( même feuille ), je ne comprends pas trop !
J'ai contourné le problème triant le fichier source de façon à avoir les
lignes vides en fin de fichier, donc plus d'utilité du filtre automatique.

Donc pour acquit de "conscience", ma question : Y a-t-il un nombre de lignes
maxi supporté par un filtre auto et quel peut-être celui-ci ?

Merci de vos réponses, qu'elles soient affirmatives ou interrogatives ( car
a priori on devrait pouvoir filtrer sur le max de lignes d'une feuille (
35000 et des broquilles ???? )

Pounet95
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Brunos
Le #5153651
Bonjour,
XL2000 et Windows2000

Dans une feuille comprenant quelques 17250 lignes, dont la moitié sont
vides ( import texte ).
Pour supprimer les lignes dont la cellule en colonne B est vide, dans
un premier temps, j'utilise un filtre automatique puis je tente (
tout ça en VBA ) de sélectionner la plage résultante pour la supprimer
:

Set LignesVisibles = Range(Cells(
ligneDeb,colDeb),Cells(ligneFin,ColFin),SpecialCells(xlTypeVisible)
LignesVisibles.Select
Selection.Delete

Le message généré est alors :
Microsoft Excel ne peut créer ni utiliser la plage de données car
celle-ci est trop complexe. Essayez les solutions suivantes :
- Utilisez des données qui peuvent être sélectionnées dans un
rectangle contigü,
- Utilisez des données de la même feuille

Comme je suis dans le cas 2 ( même feuille ), je ne comprends pas trop
!
J'ai contourné le problème triant le fichier source de façon à avoir
les lignes vides en fin de fichier, donc plus d'utilité du filtre
automatique.

Donc pour acquit de "conscience", ma question : Y a-t-il un nombre de
lignes maxi supporté par un filtre auto et quel peut-être celui-ci ?

Merci de vos réponses, qu'elles soient affirmatives ou interrogatives
( car a priori on devrait pouvoir filtrer sur le max de lignes d'une
feuille ( 35000 et des broquilles ???? )

Pounet95



Quand tu filtres ton fichier, comme il n'est pas trié selon B, le
résultat du filtre est une suite de lignes masquées (qd B est vide) et
non masquées.
LignesVisibles.Select représente une multi-sélection avec beaucoup de
plages différentes non-contiguës. C'est ça qui bloque la suppression.
Ce n'est pas un problème du filtre mais un problème de delete.
Par contre si tu tri selon colonne B, toutes tes lignes sont contigües
et tu peux supprimer sans pb.

--
Brunos

Pounet95
Le #5153491
Bonsoir et merci
Ok, mais je reste quand même sceptique car avec beaucoup moins de lignes, ça
fonctionne.
Mais c'est sûrement qu'il y a moins de plages non contigües !
Sinon, effectivement, trier en 1er lieu s'avère bien plus efficace et
rapide.

Bonne soirée
Pounet95

"Brunos" news:%
Bonjour,
XL2000 et Windows2000

Dans une feuille comprenant quelques 17250 lignes, dont la moitié sont
vides ( import texte ).
Pour supprimer les lignes dont la cellule en colonne B est vide, dans un
premier temps, j'utilise un filtre automatique puis je tente ( tout ça
en VBA ) de sélectionner la plage résultante pour la supprimer :

Set LignesVisibles = Range(Cells(
ligneDeb,colDeb),Cells(ligneFin,ColFin),SpecialCells(xlTypeVisible)
LignesVisibles.Select
Selection.Delete

Le message généré est alors :
Microsoft Excel ne peut créer ni utiliser la plage de données car
celle-ci est trop complexe. Essayez les solutions suivantes :
- Utilisez des données qui peuvent être sélectionnées dans un rectangle
contigü,
- Utilisez des données de la même feuille

Comme je suis dans le cas 2 ( même feuille ), je ne comprends pas trop !
J'ai contourné le problème triant le fichier source de façon à avoir les
lignes vides en fin de fichier, donc plus d'utilité du filtre
automatique.

Donc pour acquit de "conscience", ma question : Y a-t-il un nombre de
lignes maxi supporté par un filtre auto et quel peut-être celui-ci ?

Merci de vos réponses, qu'elles soient affirmatives ou interrogatives (
car a priori on devrait pouvoir filtrer sur le max de lignes d'une
feuille ( 35000 et des broquilles ???? )

Pounet95



Quand tu filtres ton fichier, comme il n'est pas trié selon B, le résultat
du filtre est une suite de lignes masquées (qd B est vide) et non
masquées.
LignesVisibles.Select représente une multi-sélection avec beaucoup de
plages différentes non-contiguës. C'est ça qui bloque la suppression.
Ce n'est pas un problème du filtre mais un problème de delete.
Par contre si tu tri selon colonne B, toutes tes lignes sont contigües et
tu peux supprimer sans pb.

--
Brunos



Publicité
Poster une réponse
Anonyme