XL2007 specialcells visible

Le
le Nordiste
Bonjour,

Je travaille sur XL2007.

Sur la feuille "ANA" j'ai plus de 100 000 lignes de données.
Je place un filtre en colonne "H" avec un critére "MonCritére"
et je désire copier les lignes sélectionnées dans la feuille "BRO"

J'essaye avec specialcell visible mais sans succés ; pouvez vous
m'aider ?

Avec mes remerrciements anticipés
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
Jacquouille
Le #22143431
Bonjour
Je n'ai pas 2007, mais sur l'anciene version, n'existe-t-il pas une option
"filtrer sur place ou dans une autre feuille"?

--
Bien amicalmement,
"Le vin est au repas ce que le parfum est à la femme."

Jacquouille.

"le Nordiste"
Bonjour,

Je travaille sur XL2007.

Sur la feuille "ANA" j'ai plus de 100 000 lignes de données.
Je place un filtre en colonne "H" avec un critére "MonCritére"
et je désire copier les lignes sélectionnées dans la feuille "BRO"

J'essaye avec specialcell visible mais sans succés ; pouvez vous
m'aider ?

Avec mes remerrciements anticipés
michdenis
Le #22143421
Bonjour,

après avoir exécuté un filtre, tu peux employer l'une
de ces 2 procédures pour copier les lignes visibles

Celle-ci copie toutes les lignes visibles de la plage filtrée
'---------------------------------------
Sub test()
With Worksheets("Feuil1")
With .Range("_FilterDataBase").SpecialCells(xlCellTypeVisible)
.Copy Worksheets("Feuil3").Range("A1")
End With
End With
End Sub
'-------------------------------------------

Celle-ci copie toutes les lignes visibles de la la plage filtrée
mois la ligne d'en-tête de la plage filtrée
'-------------------------------------------
Sub test1()
Dim Rg As Range
With Feuil2 ' Worksheets("Feuil1")
Set Rg = .Range("_FilterDataBase")
With Rg
With .Offset(1).Resize(Rg.Rows.Count - 1)
.SpecialCells(xlCellTypeVisible).Copy Worksheets("Feuil3").Range("A1")
End With
End With
End With
End Sub
'-------------------------------------------



"le Nordiste" :
Bonjour,

Je travaille sur XL2007.

Sur la feuille "ANA" j'ai plus de 100 000 lignes de données.
Je place un filtre en colonne "H" avec un critére "MonCritére"
et je désire copier les lignes sélectionnées dans la feuille "BRO"

J'essaye avec specialcell visible mais sans succés ; pouvez vous
m'aider ?

Avec mes remerrciements anticipés
le Nordiste
Le #22143801
Désolé michdenis,


J'ai un message d' erreur 1004 excell ne peut pas créer ni utiliser
la plage car celle ci est trop complexe
à la ligne
With .Range("_FilterDataBase").SpecialCells(xlCellTypeVisible) de la
première procédure

J'ai essayé en réduisant la taille de mon fichier de 100 000 lignes
- 50 000, 10 000, jusqu'à 1 000 lignes et donnant 450 lignes
distinctes aprés filtrage pour que ça marche.
de toute façon je m'imagine mal traiter mes 100 000 lignes par blocs
de 1000 lignes

merci de ton aide
michdenis
Le #22143981
Je n'ai jamais fait des filtres sur une plage de 100,000 lignes...
La méthode utilisée a peut-être des limites... je n'en sais rien...

Cependant, au lieu d'utiliser le filtre automatique, tu peux employer
le filtre avancé (élaboré). Et si tu désires obtenir le résultat dans la
feuille de ton choix autre que la feuille où sont tes données de base,
Tu détermines une zone de critère utilisant au moins 2 cellules :
A1 Étiquette de la colonne sur laquelle tu établis un critère
A2 ton critère

Dans la feuille de destination, tu peux déterminer les champs(colonnes)
qui seront copiés parmi ceux de ton tableau des données. Pour ce faire,
tu fais un copier-coller des titres des champs des colonnes de ton tableau de base
(seulement ceux qui t'intéressent) vers la ligne d'étiquette de ta feuille de
destination. Si tu veux tout copier, tu n'indiqueras à la fenêtre du filtre élaboré
que la première cellule de départ où il devra copier le résultat.

IMPORTANT : tu dois OBLIGATOIREMENT appeler la commande du filtre
élaboré à partir de ta feuille de destination.



"le Nordiste" :
Désolé michdenis,


J'ai un message d' erreur 1004 excell ne peut pas créer ni utiliser
la plage car celle ci est trop complexe
à la ligne
With .Range("_FilterDataBase").SpecialCells(xlCellTypeVisible) de la
première procédure

J'ai essayé en réduisant la taille de mon fichier de 100 000 lignes
- 50 000, 10 000, jusqu'à 1 000 lignes et donnant 450 lignes
distinctes aprés filtrage pour que ça marche.
de toute façon je m'imagine mal traiter mes 100 000 lignes par blocs
de 1000 lignes

merci de ton aide
Publicité
Poster une réponse
Anonyme