Private Sub CommandButton1_Click()
Dim RngD As Range, TD(), LD&, RngM As Range, TM(), LM&, Code&, CodMn&, CodMx&, TDsg()
With Worksheets("DONNEES"): Set RngD = .[A2].Resize(.Cells(.Rows.Count, "A").End(xlUp).Row - 1, 2): End With
With Worksheets("MVTS"): Set RngM = .[A3].Resize(.Cells(.Rows.Count, "A").End(xlUp).Row - 2, 2): End With
TD = RngD.Value
TM = RngM.Value
CodMx = 0: CodMn = &H7FFFFFFF
For LD = 1 To UBound(TD, 1)
Code = TD(LD, 1)
If CodMn > Code Then CodMn = Code
If CodMx < Code Then CodMx = Code
Next LD
ReDim TDsg(CodMn To CodMx)
For LD = 1 To UBound(TD, 1)
Code = TD(LD, 1)
If Code >= CodMn And Code <= CodMx Then TDsg(Code) = TD(LD, 2)
Next LD
For LM = 1 To UBound(TM, 1)
Code = TM(LM, 2)
If Code >= CodMn And Code <= CodMx Then TM(LM, 1) = TDsg(Code)
Next LM
RngM.Columns("A").Value = TM
End Sub