Trie de données et mise en concordance de 2 fichiers

Blixa

XLDnaute Nouveau
Bonjour,

je suis nouveau sur le forum, et j'espère que vous allez pouvoir m'aider....
voilà j'ai 2 fichiers clients, j'ai trié les données par nom, et maintenant j'aimerais qu'Excel compare ces 2 fichiers et me dise pour quels clients les données des 2 fichiers sont concordantes, et pour quels clients les données d'un fichier à l'autre sont différentes....

Est-ce possible ? si oui comment je dois procéder ?...

j'ai ~400 lignes, donc ~400 clients, et j'aimerais optimiser pour éviter de tous les comparer un à un "à la mano"....

Merci par avance pour votre aide...

PS : j'oublie de préciser que je dois comparer les adresses et les codes postaux clients...j'ai une colonne nom, une colonne adresse, et une autre code postal...
 
Dernière édition:

Modeste

XLDnaute Barbatruc
Re : Trie de données et mise en concordance de 2 fichiers

Bonjour Blixa et bienvenue parmi nous,:D

Il serait plus facile, si tu veux des réponses précises, que tu nous déposes un extrait de ton fichier (avec des noms et adresses fictifs, 48 ko max, fichier éventuellement compressé).
Autrement, les seules possibilités seraient, soit de "recréer" un fichier similaire, soit de lister les formules qui pourraient être utilisées (NB.SI, RECHERCHEV, EXACT, etc ...)

Bien à toi,

Modeste
 

Cousinhub

XLDnaute Barbatruc
Re : Trie de données et mise en concordance de 2 fichiers

Bonjour, et Bienvenue

Bonjour, Modeste

un petit exemple, avec une macro....

Dans le zip joint, 2 fichiers, "compare.xls" et "compare2.xls"

On teste tous les noms du fichiers "compare", avec les noms du fichier "compare2"

Si ça concorde, on passe au suivant

Si non, on continue la recherche (il peut y avoir plusieurs "Martin"...)

Si on ne trouve pas de concordance, 2 solutions :

- Quelque chose diffère, l'adresse ou le CP : la cellule se met en jaune
- Il n'y a pas ce nom dans le 2 ème fichier, la cellule se met en rouge

dans les 2 cas, un petit 1 est inscrit dans la colonne D
Ainsi, avec le filtre automatique, tu vois automatiquement les noms qui posent problème....

Le code :

Code:
Sub ee()
Dim F1 As Worksheet, F2 As Worksheet
Dim Plg1 As Range, Plg2 As Range
Dim Cel As Range
Dim C
Set F1 = ThisWorkbook.Sheets("Feuil1")
Set F2 = Workbooks("compare2.xls").Sheets("Feuil1")
Set Plg1 = F1.Range("A2:A" & F1.[A65000].End(xlUp).Row)
Set Plg2 = F2.Range("A2:A" & F2.[A65000].End(xlUp).Row)
For Each Cel In Plg1
    a = Join(Application.Transpose(Application.Transpose(Cel.Resize(1, 3).Value)), ";")
    Set C = Plg2.Find(Cel, LookAt:=xlWhole)
    If Not C Is Nothing Then
        Firstaddress = C.Address
        b = Join(Application.Transpose(Application.Transpose(C.Resize(1, 3).Value)), ";")
        If a <> b Then
            Do
                Set C = Plg2.FindNext(C)
                If Not C Is Nothing Then
                    b = Join(Application.Transpose(Application.Transpose(C.Resize(1, 3).Value)), ";")
                    If a = b Then Exit Do
                End If
            Loop While Not C Is Nothing And C.Address <> Firstaddress
            If a <> b Then Cel.Interior.ColorIndex = 6: Cel.Offset(0, 3) = 1
        End If
    Else
        Cel.Interior.ColorIndex = 3: Cel.Offset(0, 3) = 1
    End If
Next Cel
End Sub

Bon courage

le zip :
 

Pièces jointes

  • compare.zip
    33.3 KB · Affichages: 44
  • compare.zip
    33.3 KB · Affichages: 42
  • compare.zip
    33.3 KB · Affichages: 52

Brigitte

XLDnaute Barbatruc
Re : Trie de données et mise en concordance de 2 fichiers

Bonjour tout le monde,

Une solution : tu places (par copier/coller) tes données du premier fichier sous le second (ou inverse) dans une copie de ton classeur (plus prudent).

Puis tu les passes à la moulinette du merveilleux mdfdoublons... en choisissant les colonnes à tester... Ca va te surligner, supprimer... les doublons (tu choisis ce que tu veux faire). C'est imparable, et un gain de temps inestimable.

Il te faut juste télécharger ce trésor, l'installer (rapide comme tout, et très simple).

Son site : mDF XLdoublons v5.0 : myDearFriend! Excel Pages

Bon courage.
 

Blixa

XLDnaute Nouveau
Re : Trie de données et mise en concordance de 2 fichiers

merci pour vos différentes réponses....

le but serait de faire ressortir les différences entre les 2 fichiers.
Il semblerait que les codes postaux et villes soient différents d'un fichier à l'autre sur certains clients, donc j'aimerais savoir quels sont les clients touchés par ces erreurs...
le top serait d'obtenir un fichier texte, excel, ou autre, qui me liste les clients impactés et avec comme infos nom du client / adresse + CP + ville fichier 1 / adresse + CP + ville fichier 2, et le top du top X lignes correctes, X lignes erronées...
mais bon si déjà je peux mettre en jaune les différences comme proposé par bhbh, ça sera déjà ça...

Modeste, je prépare 2 fichier d'exemple pour vous montrer ce qu'il en est... dès que c'est bon je les poste...

En tout cas encore merci pour votre aide...
 

Modeste

XLDnaute Barbatruc
Re : Trie de données et mise en concordance de 2 fichiers

re-bonjour,

Blixa, avec la macro proposée par bhbh, même pas besoin de déposer de fichiers (sauf si, le cas échéant, on y trouvait des particularités)

bhbh ... Joli code ... j'ai encore tant de choses à découvrir !

Salut Brigitte, depuis le temps que j'entends parler de MyDearFriend, faudra que je passe voir un jour ... mais ce sera encore pour m'apercevoir que je ne connais pas encore plein d'autres aspects. Que dis-je, des pans entiers ! Le vaste monde, comparé à mon petit coin de la petite Belgique.

Modeste
 

Brigitte

XLDnaute Barbatruc
Re : Trie de données et mise en concordance de 2 fichiers

Salut le fil,

Modeste, si tu as 5 mn, va sur le site, télécharge :

- mdfdoublons
- mdfcalendar / http://www.mdf-xlpages.com/modules/wfdownloads/singlefile.php?cid=2&lid=19

Ce sont deux merveilles entre autres. Deux macros complémentaires super abouties, faciles d'utilisation.

Et reviens me dire si tu n'es pas conquis !!! Moi les deux sont dans mes barres d'outils au bureau comme à la maison, et me sont INDISPENSABLES.

J'y ai rajouté mdfscanfichiers, un fichier qui permet d'analyser n'importe quel répertoire (au choix) et te donne sur excel la liste des fichiers, leur type, leur taille/poids... après tu appliques doublons, et tu sais si tu as deux fois le même fichier sur ton pc... drôlement pratique (notamment pour les photos).
 
Dernière édition:

Blixa

XLDnaute Nouveau
Re : Trie de données et mise en concordance de 2 fichiers

bon me revoilà...
désolé pour le temps d'attente, j'ai eu une urgence tondeuse à régler...
en pièce jointe 2 fichiers d'exemple
 

Pièces jointes

  • Fichier A_Test.xls
    13.5 KB · Affichages: 86
  • Fichier B_Test.xls
    13.5 KB · Affichages: 73

Cousinhub

XLDnaute Barbatruc
Re : Trie de données et mise en concordance de 2 fichiers

Re-,

regarde ton fichier A en retour...

Attention, dans ton fichier réel, il te faudra préciser exactement le nom du 2 ème classeur, ainsi que les noms des feuilles de chaque classeur dans ces lignes :

Code:
Set F1 = ThisWorkbook.Sheets("[COLOR="Red"]Fichier A[/COLOR]")
Set F2 = Workbooks("[COLOR="DeepSkyBlue"]Fichier B_Test.xls[/COLOR]").Sheets("[COLOR="Red"]Fichier B[/COLOR]")

le nom des feuilles à mettre à la place de ce qui est en rouge
et le nom du 2 ème classeur à la place de ce qui est en bleu

Fais gaffe égalment, il y a un espace devant chaque nom...

Vérifie qu'il en soit de même dans les 2 fichiers... (sinon, tu n'auras que des erreurs de concordance...)

Regarde également dans la colonne H, tu auras des 1 au niveau des erreurs.
Utilise un filtre automatique, afin de les sélectionner

Le fichier :
 

Pièces jointes

  • Fichier A_Test_v1.xls
    26.5 KB · Affichages: 82

Modeste

XLDnaute Barbatruc
Re : Trie de données et mise en concordance de 2 fichiers

re,

Brigitte, merci pour les tuyaux (mais c'est à mon tour d'aller tondre ;))

J'attends avec impatience (mais je tonds quand même !) de voir si bhbh trouve le temps d'adapter son code (quoi, il faut "splitter" après le "Join", si on veut lister les différences, comme Blixa le demande ... et si tu as le temps, le courage, etc.)

Modeste

Oups: déjà de retour, bhbh !?
 

Blixa

XLDnaute Nouveau
Re : Trie de données et mise en concordance de 2 fichiers

bon bon bon...
bhbh j'ai besoin d'un peu plus de précision...je ne suis pas un grand spécialiste d'excel...
que dois-je faire avec les lignes de code que tu m'indiques?
je vais être relou, et je m'en excuse, mais là je piges pas...
 

Cousinhub

XLDnaute Barbatruc
Re : Trie de données et mise en concordance de 2 fichiers

Re-,

Bon, ça va pas être facile...

Tu poses ta question, et 2 secondes plus tard, t'es déjà déconnecté.... :cool:

Ce code, il faut l'insérer dans un module....

Dans ton fichier Maître, tu fais Alt + F11, ça t'ouvre l'éditeur VBE (Pour Visual Basic Editor)

Là, tu fais Insertion/Module

Tu colles mon code dans la feuille blanche qui apparaît

Puis tu modifies les noms du fichier "Esclave", ainsi que les noms des onglets où se situent tes données à comparer....

Tu reviens sur ton onglet, et tu peux soit insérer un dessin, soit lancer le code directement..

Si tu insères un dessin, comme dans mon fichier, tu fais un clic-droit dessus, puis affecter une macro...

Là, tu choisis la macro "ee"...

Tu sélectionnes une cellule, et quand tu repasses la souris dessus, celle-ci se transforme en main...

En cliquant dessus, tu vas faire dérouler le code..

Sinon, tu fais Outils/Macros/Macros....

Et là, tu sélectionnes "ee", puis Exécuter

J'espère que les fichiers exemples que tu as joint sont strictement semblable, concernant la structure....

Tu as une colonne supplémentaire dans le classeur A (la colonne A)

Et pour la concordance, j'ai pris le code Destinataire en référence, j'espère qu'il est unique...

Bon, si toujours pas compris, tu redemandes, mais reste un peu plus longtemps connecté.....

Bon courage
 

Blixa

XLDnaute Nouveau
Re : Trie de données et mise en concordance de 2 fichiers

bon... j'ai ouvert mon fichier A, et j'ai suivi tes instructions...
alt+F11, insertion>module, et je colle ton code... j'ai pris le code de ton message de 13h59, le plus long donc...
je reviens sur mon fichier...macro, exécuter, je choisis "ee"... et là j'ai un message d'erreur qui me dit "erreur d'exécution '9': l'indice n'appartient pas à la sélection"...
j'ai du faire une boulette mais laquelle...?
si je te suis, mon fichier maitre ça va être mon fichier avec les données correctes, et mon fichier esclave celui avec les données erronées...
sinon concernant mes fichiers, niveau de la structure ils sont semblables au fichiers d'exemple...
 

Cousinhub

XLDnaute Barbatruc
Re : Trie de données et mise en concordance de 2 fichiers

Re-,

pour dérouler le code, on va le faire pas à pas...

Tout d'abord, as-tu modifié les noms du classeur et des onglets?

Dès que c'est fait, tu te remets dans l'éditeur, tu cliques au milieu de la procédure, et tu fais F8

la 1ère ligne va passer en jaune..

Puis F8, à suivre, jusqu'à ce que ça s'arrête sur un message d'erreur..

Là, tu me donnes la ligne..

et on verra, pour corriger
 

Discussions similaires

Statistiques des forums

Discussions
312 379
Messages
2 087 762
Membres
103 661
dernier inscrit
fcleves