Comparer des cellules dans 2 fichiers Excel

Fermé
Alloha - 16 juil. 2020 à 17:22
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 - 17 juil. 2020 à 14:36
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.
A voir également:

2 réponses

yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477
16 juil. 2020 à 21:16
bonjour,
je pense que c'est réalisable.
quelles sont tes connaissances en VBA? veux-tu apprendre?
0
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 :)
0
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477 > Alloha
17 juil. 2020 à 12:24
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
0
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477 > yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024
17 juil. 2020 à 12:50
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
0
Merci beaucoup, je vais les tester :)
0
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477
17 juil. 2020 à 14:36
ces codes doivent se trouver dans le fichier qui va enregistrer les différences.
0