Comparer des cellules dans 2 fichiers Excel
Alloha
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je souhaite comparer les valeurs des cellules de deux fichiers Excel et créer par la suite un fichier qui récapitule là où il y a une différence entre mes cellules ?
Par avance merci.
Je souhaite comparer les valeurs des cellules de deux fichiers Excel et créer par la suite un fichier qui récapitule là où il y a une différence entre mes cellules ?
Par avance merci.
2 réponses
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour,
je pense que c'est réalisable.
quelles sont tes connaissances en VBA? veux-tu apprendre?-
Merci pour ta réponse, oui je travaille avec VBA mais je ne suis pas experte! j'apprends au fur et à mesure que j'aurai besoin d'une fonctionnalité ! Si tu as une idée comment le faire, laisse moi savoir et je pourrais l'adapter à mon cas :)
- voici un exemple:
Option Explicit Private Sub comp() Dim c1 As Workbook, c2 As Workbook Dim r1 As Range, r2 As Range, rdest As Range Set c1 = Workbooks.Open(ThisWorkbook.Path + "\f1.xlsx") Set c2 = Workbooks.Open(ThisWorkbook.Path + "\f2.xlsx") Set r1 = c1.Sheets("Sheet1").[A1] Set r2 = c2.Sheets("Sheet1").[A1] Set rdest = ThisWorkbook.Sheets("Sheet1").[A1] Do While r1 <> "" If r1 <> r2 Then rdest = r1.Row rdest.Offset(0, 1) = r1 rdest.Offset(0, 2) = r2 Set rdest = rdest.Offset(1, 0) End If Set r1 = r1.Offset(1, 0) Set r2 = r2.Offset(1, 0) Loop End Sub - un autre exemple:
Private Sub comp2() Dim c1 As Workbook, c2 As Workbook Dim r1 As Range, r2 As Range, rdest As Range Dim f2 As Worksheet Set c1 = Workbooks.Open(ThisWorkbook.Path + "\f1.xlsx") Set c2 = Workbooks.Open(ThisWorkbook.Path + "\f2.xlsx") Set f2 = c2.Sheets("Sheet1") Set rdest = ThisWorkbook.Sheets("Sheet1").[A1] For Each r1 In c1.Sheets("Sheet1").UsedRange Set r2 = f2.Range(r1.Address) If r1 <> r2 Then rdest = r1.Address rdest.Offset(0, 1) = r1 rdest.Offset(0, 2) = r2 Set rdest = rdest.Offset(1, 0) End If Next r1 End Sub
-
-