Bonjour,
Dans cette situation, dans une colonne libre de chaque fichier (I par exemple) écrire en I2 :
=B2&C2&D2&E2&F2&G2
et tirer la formule vers le bas.
Ensuite exécutez la macro sur cette colonne.
la macro corrigée :
Sub galopin()
Dim iLRS%, iLRC%, i%, j%
Dim TabloS(), TabloC()
Dim WbS As Workbook, WbC As Workbook
Dim WsS As Worksheet, WsC As Worksheet
'Détermination du nombre de ligne de Classeur "Source" et "Cible"
Set WbS = Workbooks("Y.xlsm")
Set WbC = Workbooks("X.xlsm")
Set WsS = WbS.Worksheets(1)
Set WsC = WbC.Worksheets(1)
iLRS = WsS.Cells(Rows.Count, 5).End(xlUp).Row 'car la colonne 5 est la plus longue...
iLRC = WsC.Cells(Rows.Count, 5).End(xlUp).Row
TabloS() = WsS.Range("I1:I" & iLRS)
TabloC() = WsC.Range("I1:I" & iLRC)
WsS.Columns(9).Clear
WsC.Columns(9).Clear
'On passe en revue tout le monde
For i = 1 To UBound(TabloS)
For j = 1 To UBound(TabloC)
'Si égalité...
If TabloC(j, 1) = TabloS(i, 1) Then
WsC.Range("I" & j).Value = i
WsC.Range("I" & j).Interior.ColorIndex = 3
WsS.Range("I" & i).Value = j
WsS.Range("I" & i).Interior.ColorIndex = 3
End If
Next
Next
Set WbS = Nothing
Set WbC = Nothing
Set WsS = Nothing
Set WsC = Nothing
End Sub
A+