Sub ajout_sup_de_ligne1()
Dim WsS As Worksheet, WsC As Worksheet
Dim DerLigne As Long
Dim PlageS As Range, PlageC As Range, Cel As Range, C As Range
Set WsS = Worksheets("prodHUB")
Set WsC = Worksheets("MAJ")
'On recherche la dernière ligne renseignée dans la colonne C de "prodHUB"
DerLigneS = WsS.Range("C" & WsS.Rows.Count).End(xlUp).Row
'Si la colonne est renseignée
If DerLigneS >= 8 Then
Application.ScreenUpdating = False
'On définit la plage des données à rechercher (Plage source dans "prodHUB")
Set PlageS = WsS.Range("C8:C" & DerLigneS)
'On définit la plage de recherche (Plage Cible dans "MAJ")
Set PlageC = WsC.Range("G2:G" & WsC.Range("G2").End(xlDown).Row)
'On effectue la recherche
For Each Cel In PlageS
Set C = PlageC.Find(Cel, LookIn:=xlValues)
If Not C Is Nothing Then
firstAddress = C.Address
Do
'On recherche la ligne où doit se faire l'ajout
LigneAjout = WsC.Range("A" & WsC.Rows.Count).End(xlUp)(2).Row
'On effectue la copie des données dans la colonne A de "MAJ"
WsC.Range("A" & LigneAjout) = C.Value
'On copie le commentaire de la colonne M de "prodHUB" dans dans la colonne E de "MAJ"
WsC.Range("E" & LigneAjout) = Cel.Offset(0, 9)
Set C = PlageC.FindNext(C)
Loop While Not C Is Nothing And C.Address <> firstAddress
End If
Next Cel
End If
Application.ScreenUpdating = False
WsC.Select
'On libère la mémoire
Set C = Nothing: Set PlageC = Nothing: Set PlageS = Nothing: Set WsC = Nothing: Set WsS = Nothing
End Sub