Bases à comparer

ZEZEZE

XLDnaute Nouveau
Bonjour,

J'ai 2 bases dont je souhaite identifier les lignes qui différent entre la Base2 et la Base1. Disons que la Base2 est antérieure à la Base1.

Une clé, présente dans chaque base, permet la comparaison des lignes. En effet, les lignes peuvent être identiques d'une base à l'autre mais positionnées différemment dans le fichier.

Attention, je souhaite identifier les lignes même si le contenu d'1 cellule a été modifié, pour une même clé.

En résultat, l'identification de la ligne en cause présente dans la Base2 peut me suffire, en faisant apparaître la clé par exemple.

Merci de l'intérêt porté à ma demande.
Pierre
 

Pièces jointes

  • Bases à comparer.xls
    43 KB · Affichages: 106

croco40

XLDnaute Occasionnel
Re : Bases à comparer

Pour pierrejean,
un petit coucou d'afrique, ou il ne fait que 40° (je sais qu'en france c'est pas la meme).
J'essaie de suivre un peu le forum depuis ici, mais l'acces a internet est assez limité.
Bonne continuation et le bisous a tout le reste du forum.
Suerte
Croco
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Bases à comparer

Bonjour,

Voir PJ

Comparaison BD

Code:
Sub BD2_BD1()
  Set f1 = Sheets("Base1")
  Set f2 = Sheets("Base2")
  Set MonDico1 = CreateObject("Scripting.Dictionary")
  For Each c In f1.Range("a2:a" & f1.[a65000].End(xlUp).Row)
    MonDico1.Item(c.Value) = c.Value
  Next c
  Set MonDico2 = CreateObject("Scripting.Dictionary")
  For Each c In f2.Range("a2:a" & f2.[b65000].End(xlUp).Row)
    If Not MonDico1.exists(c.Value) Then
      If Not MonDico2.exists(c.Value) Then MonDico2.Add c.Value, c.Row
    End If
  Next c
  Sheets("Différences dans la Base2").[A2].Resize(MonDico2.Count, 1) = Application.Transpose(MonDico2.keys)
  Sheets("Différences dans la Base2").[b2].Resize(MonDico2.Count, 1) = Application.Transpose(MonDico2.items)
End Sub

JB
 

Pièces jointes

  • CompareBDRapide.xls
    36 KB · Affichages: 114
Dernière édition:

ZEZEZE

XLDnaute Nouveau
Re : Bases à comparer

A PIERREJEAN

La ligne 3 correspondant à z2bb devrait également ressortir car Janvier et MArs sont différents.
La clé z1aa aussi car elle n'existe plus dans la BAse2.

A BOISGONTIER, j'ai votre site et j'ai regardé le fichier proposé. Mais cela ne correspond pas expressément à mon souhait.
Merci à tous les 2

Pierre
 

pierrejean

XLDnaute Barbatruc
Re : Bases à comparer

Re

Je n'avais pas saisi que la comparaison devait porter sur toute la ligne

Vois si cela va mieux
 

Pièces jointes

  • Bases à comparer.zip
    20 KB · Affichages: 53
  • Bases à comparer.zip
    20 KB · Affichages: 59
  • Bases à comparer.zip
    20 KB · Affichages: 57

pierrejean

XLDnaute Barbatruc
Re : Bases à comparer

Re

Il y avait effectivement une erreur

Verifie cette version
Attention elle donne a la fois les differences dans la base1 et la base2
 

Pièces jointes

  • Bases à comparer.zip
    20 KB · Affichages: 58
  • Bases à comparer.zip
    20 KB · Affichages: 62
  • Bases à comparer.zip
    20 KB · Affichages: 57

ZEZEZE

XLDnaute Nouveau
Re : Bases à comparer


Encore moi...

J'ai modifié un "peu" mes 2 bases de données afin de les faire correspondre à mes besoins.
J'ai depuis un message d'erreur en appuyant sur la macro DIFF (!)
Je te joins mon fichier en PJ.

D'autre-part, BD1-BD2 ou l'inverse n'affiche pas les différences entre les 2 bases (moins urgent)
Merci
Pierre
 

Pièces jointes

  • Diff2BDtestforum.zip
    16.7 KB · Affichages: 56
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
311 724
Messages
2 081 938
Membres
101 844
dernier inscrit
pktla