XL 2013 Tri BD à partir d'une liste

peaulin

XLDnaute Junior
Bonjour à tous,

J'ai récupérer une base de données sur internet qui recense des informations selon les villes d'Ile de France. Ce qui m'intéresse est de faire le tri de cette colonne villes à partir d'une liste (colonne B et feuille 2) de villes qui m'intéressent et ainsi éliminer les autres. J'ai essaye de faire un filtre avancé mais ca ne fonctionne pas. Si quelqu'un a une méthode rapide et efficace pour sélectionner toutes les données à partir de ma liste de villes, je suis preneur !

Merci ! :)

ps: il se peut que certaines villes de ma liste ne soient pas inclus dans la base de données et donc absente de la colonne "communes"
 

Pièces jointes

  • TEST_ZAE.xls
    1.4 MB · Affichages: 31

peaulin

XLDnaute Junior
Merci de votre aide mais l'opération n'a pas du fonctionné car dans la feuille résultat après avoir cliqué, les données ne correspondent pas à la liste de villes et s'arrêtent à la ligne 97 (je précise que j'ai bien activé les macros).
 

Jacky67

XLDnaute Barbatruc
Merci de votre aide mais l'opération n'a pas du fonctionné car dans la feuille résultat après avoir cliqué, les données ne correspondent pas à la liste de villes et s'arrêtent à la ligne 97 (je précise que j'ai bien activé les macros).
Re..
J'ai compris qu'il faut récupérer toutes les données de la feuille "Sheet"(par la colonne B) selon la liste présente en feuille "Liste"(colonne A)
Mais apparemment ce n'est pas cela ?
 

peaulin

XLDnaute Junior
Pardon j'ai du mal m'exprimé, il s'agit de récupérer toutes les données de la feuille sheet en fonction de la listé de villes établie en feuille 2 (ou colonne B). C'est à dire que je souhaiterais éliminer toutes les données qui ne correspondent pas aux villes de ma liste (par exemlpe garder les données d'acheres, d'Aubervilliers et enlever ablis,...).
Je pourrais le faire manuellement grâce à un filtre mais c'est très long... et j'aimerais pouvoir reproduire cette méthode. La technique avec macro est la seule solution?

Encore merci
 

Jacky67

XLDnaute Barbatruc
Super ça a fonctionné merci beaucoup ! :)

As-tu un tutoriel à me conseiller pour reproduire cette technique sur d'autres données?

Merci
Re...
Pour que ce code fonctionne sur d'autres données
Code:
Sub Elimine()
Dim c As Range
Feuil3.Range("a2:z" & Rows.Count).Clear
Application.ScreenUpdating = False
For Each c In [laliste]
[tableau1].AutoFilter Field:=3, Criteria1:=c
On Error Resume Next
[tableau1].SpecialCells(xlCellTypeVisible).Copy Feuil3.Range("A" & Rows.Count).End(xlUp).Offset(1)
Next
End Sub
Garder ce classeur et coller les données dans les feuilles correspondantes
ou
Nommées deux plages
*Avec Excel 2007 et plus, transformer les plages en tableau
Celle de la feuille "sheet" est nommée "tableau1" (sélection de toutes les cellules)
Celle de la feuille "liste" est nommée "Laliste" ( sélection des données colonne A)
La boucle se fait sur la liste des items de la plage nommée "Laliste" (ici ce sera les données de la colonne A de la feuille "liste")
Dans ce code le filtre se fait sur la colonne 3 de la plage nommée "tableau1" (ici ce sera la colonne des communes) par Field=3
Il est facile de filtrer sur une autre colonne si besoin, Field=2 ou Field=3 ou Field=4 etc....
On Error Resume Next
Ceci est pour éviter le message d'Excel si le filtre ne trouve rien à filtrer.

Bon courage :D
 

Discussions similaires

Statistiques des forums

Discussions
312 482
Messages
2 088 768
Membres
103 956
dernier inscrit
profil72