doublon : enlever ligne partiellement identique

  • Initiateur de la discussion lionel
  • Date de début
L

lionel

Guest
Bonjour à vous,

Je travaille actuellement sur un fichier Excel (Excel 2002 - windows xp) qui me pose souci … Mes recherches de solution sur le net m’ont amené vers votre site qui m’a donné plein d’astuces et d’infos mais pas celles qui concerne le fichier en question.

Peut-être pourrez-vous m’aider ?

J’ai une base de données de 7 colonnes (colonne A : « nom », colonne B : « adresse », colonne C : « CodePostal » …) et 4000 lignes (réduite à 14 dans le fichier joint pour exemple).

Même si j’ai enlevé les doublons via la fonction données/filtre/filtre élaboré avec extraction sans doublon, cela n’enlève que les lignes complètement identiques.

Or, je considère comme doublon une ligne dont les champs « nom », « adresse » et « code postal » sont identiques à une autre ligne ayant les mêmes champs « nom », « adresse » et « code postal »

Je corse un peu la difficulté en partant du principe que si le nom est identique mais que l’adresse diffère peu (même nom de rue mais numéro de rue différent), c’est également un doublon. L’inverse est également vrai : si l’adresse est identique mais que le nom diffère peu (exemple : A1 : nom = « société x entrepôt » et A2 : nom = « société X magasin »)

Dans le fichier joint, la feuille "base" est ma base de données, la feuille "cible" est le résultat auquel je souhaite arriver.


Merci d’avance d’avoir au moins pris la peine de me lire en espérant ne pas avoir été trop flou dans mes explications.

Cordialement,

Lionel
 

Pièces jointes

  • baselp.xls
    17 KB · Affichages: 90
T

Timide

Guest
Bonjour,

Je procéderais en 3 étapes :

1) comme le filtre élaboré sur ta base complète qui te filtre comme tu l'indiques uniquement les lignes entièrement semblables

2) Je copie cette liste filtrée sur une autre feuille (avec les titres de champs bien entendu).

3) je trie la base intermédiaire ainsi obtenue sur tes champs nom, adresse et code postal, en selectionnant les colonnes,(qui doivent être adjacentes)

Puis je demande un filtre élaboré (les colonnes étant toujours sélectionnées) sans doublon.
En principe (chez moi cela marche cela te donne une nouvelle liste filtrée)

4) Pour éliminer les adresses a peu près semblables je copie la base ainsi filtrée sur une autre feuille toujours avec les titres de champs
(ouf!) et j'ajoute un nouveau champ que j'appelle doublon par exemple en H1 en supposant que tes adresses sont en colonne G

et en H2 je mets SI(DROITE(G2;5)=DROITE(G1;5);"doublon";"ok") pour avoir les enregistrements dont les 5 (à ajuster selon ton cas) derniers caractères de l'adresse sont semblables).


je recopie cette formule vers le bas

Et je fais un filtre automatique de cette liste en ayant pour n'avoir que les lignes qui n'ont pas "doublon"

Tu as enfin la liste selon tes désirs.

Le tout est naturellement rélisable par macro, mais c'est une autre histoire.

Il y a peut être plus simple , mais c'est tout ce que j'ai en magasin aujourd'hui.

Timide
 
L

lionel

Guest
Merci beaucoup pour ta réponse. J'ai commencé à travailler dessus en la complétant un peu.

C'est quand même génial d'avoir des personnes compétentes et disponibles pour nous aider ... et qui plus est, bénévolement.

L'"esprit Internet" n'est pas mort !
Bravo et merci encore.


Lionel
 

Discussions similaires

Statistiques des forums

Discussions
312 198
Messages
2 086 149
Membres
103 132
dernier inscrit
hedfahmi