Macro comparaison deux feuilles
Bonjour à tous,
Étant novice dans le monde d'excel, je fais appel à vous pour m'aider dans le monde de la comparaison
J'ai vu sur le forum un outil de comparaison qui me plait énormément, mais malheureusement je n'arrive pas à le modifier pour qu'il fonctionne sur mon besoin. ( https://forum.excel-pratique.com/viewtopic.php?f=2&t=44714 )
J'aimerais donc comparer mes 2 feuilles en un clic, et faire apparaitre les nouvelles lignes, les lignes supprimées, et les ligne modifiées en appliquant une couleur sur les cellules modifiées.
Le problème est que je n'ai pas d'identifiant unique==>solution concaténer plusieurs cellule tel que C / D / E / F / H ce qui me donnerais une valeur unique.
Pouvez vous me venir en aide pour le reste?
Par avance merci beaucoup
Bonjour,
Une piste, la comparaison est faite sur les colonnes C à H et de ligne à ligne :
Sub Test()
Dim PlgPot1 As Range
Dim PlgPot2 As Range
Dim Chaine1 As String
Dim Chaine2 As String
Dim I As Integer
Dim J As Integer
'défini les plages sur chaque feuille de la colonne C à la colonne H à partir de la ligne 2
With Worksheets("pot1"): Set PlgPot1 = .Range(.Cells(2, 3), .Cells(.Rows.Count, 8).End(xlUp)): End With
With Worksheets("pot2"): Set PlgPot2 = .Range(.Cells(2, 3), .Cells(.Rows.Count, 8).End(xlUp)): End With
'concatène et compare, si différent, colore en rouge dans la feuille "pot1"
For I = 1 To PlgPot1.Rows.Count
For J = 1 To PlgPot1.Columns.Count
Chaine1 = Chaine1 & PlgPot1(I, J).Value
Chaine2 = Chaine2 & PlgPot2(I, J).Value
Next J
If Chaine1 <> Chaine2 Then PlgPot1.Rows(I).Interior.ColorIndex = 3
Chaine1 = "": Chaine2 = ""
Next I
End SubMerci Theze d'avoir pris du temps pour moi, mais la fonction que je cite dans mon poste est vraiment faite pour moi, elle remplie tous mes impératifs, il faudrait juste que je sois en mesure de l'adapter à mon fichier... chose à laquelle je rame depuis 2 jours...