comparaison de listing excel

sioum

XLDnaute Occasionnel
Bonjour,

J'ai trouvé sur un forum un fichier excel qui permet de comparer une feuille1 avec une feuille2 et de créer sur une feuille3 les lignes supplémentaires

mais je voudrais faire la meme chose mais également dans le sens inverse

soit faire une feuille 4 qui compare la feuille 2 avec la feuille 3

ou faire une feuille regroupant la feuille 3 et 4 en une seule

j'espere avoir été clair

Merci de m'aider
 

Pièces jointes

  • test compare.xls
    37 KB · Affichages: 131
  • test compare.xls
    37 KB · Affichages: 77
  • test compare.xls
    37 KB · Affichages: 75

JNP

XLDnaute Barbatruc
Re : comparaison de listing excel

Bonjour Sioum :),
Une possibilité en inversant la macro :
Code:
Sub supprimer()
Dim Sht2 As Worksheet, Sh1 As Worksheet
Dim derlign1 As Long, derlign2 As Long, i As Long
Dim c As Range
    Application.ScreenUpdating = False
    Set Sht2 = Sheets(2)
    Sht2.Copy after:=Sht2
    derlign1 = Sheets(1).[f65536].End(xlUp).Row
    derlign2 = Sht2.[f65536].End(xlUp).Row
    i = 2
    Do While Cells(i, 6) <> ""
        Set c = Sheets(1).Range("f2:f" & derlign1).Find(Cells(i, 6), LookIn:=xlValues, lookat:=xlWhole)
        If Not c Is Nothing Then
            Rows(i).EntireRow.Delete
        Else
            i = i + 1
        End If
    Loop
    Set Sht1 = Sheets(1)
    Sht1.Copy after:=Sheets(Sheets.Count)
    derlign1 = Sheets(2).[f65536].End(xlUp).Row
    derlign2 = Sht1.[f65536].End(xlUp).Row
    i = 2
    Do While Cells(i, 6) <> ""
        Set c = Sheets(2).Range("f2:f" & derlign1).Find(Cells(i, 6), LookIn:=xlValues, lookat:=xlWhole)
        If Not c Is Nothing Then
            Rows(i).EntireRow.Delete
        Else
            i = i + 1
        End If
    Loop
End Sub
te créera 2 feuilles : feuil1/feuil2 et feuil2/feuil1 ;).
Bon WE :cool:
 

sioum

XLDnaute Occasionnel
Re : comparaison de listing excel

je teste de plusieur facon le programme

et je me demandais si je comprends bien il compare la colonne f

et si je voulais comparer également une autre colonne en meme temps

vous pourriez me dire comment faire

merci
 

sioum

XLDnaute Occasionnel
Re : comparaison de listing excel

en gros je voudrai comparé toute la ligne

donc genre feuille1 f1 et feuille 1 g1 = feuille2 f1 et feuille 2 g1

car il peut y avoir des changements entre la feuille et la feuille 2 dans n'importe quel cellule et donc je voudrai ke ca ressorte

est-ce possible docteur

merci de beaucoup pour ton aide
 

JNP

XLDnaute Barbatruc
Re : comparaison de listing excel

Re :),
Le principe de la macro, c'est
Code:
        If Not c Is Nothing Then
            Rows(i).EntireRow.Delete
        Else
            i = i + 1
        End If
en bon français, s'il a trouvé la même valeur, il efface la ligne entière, sinon, i vaut 1 de plus pour scanner la ligne suivante ;).
Donc il va falloir rajouter un test pour comparer toute la ligne
Code:
        If Not c Is Nothing Then
            If Sheets(1).Cells(c.Row, 1) = Cells(i, 1) And Sheets(1).Cells(c.Row, 2) = Cells(i, 2) Then
                Rows(i).EntireRow.Delete
            Else
                i = i + 1
            End If
        End If
là, j'ai comparé sur la colonne 1 (A) et 2 (B), mais il te faudra autant de And que de colonnes que tu souhaites vérifier :D...
Pour la deuxième, il faudra modifier tous les Sheets(1) en Sheets(2).
Bon courage :cool:
 

Discussions similaires

Statistiques des forums

Discussions
312 027
Messages
2 084 763
Membres
102 657
dernier inscrit
Ferdy