1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
Sub Test()
Dim Plg1 As Range
Dim Plg2 As Range
Dim Cel1 As Range
Dim Cel2 As Range
'défini les plage sur chaque feuille en colonne A à partir de A2 (A1 = entête)
'La colonne A étant supposé être la colonne des numéros de bon de commande, adapter !
With Worksheets("Base 1"): Set Plg1 = .Range(.Cells(2, 1), .Cells(.Rows.Count, 1).End(xlUp)): End With
With Worksheets("Base 2"): Set Plg2 = .Range(.Cells(2, 1), .Cells(.Rows.Count, 1).End(xlUp)): End With
'parcours la colonne A de la feuille "Base 1"...
For Each Cel1 In Plg1
'...pour effectuer la recherche du numéro en cours
Set Cel2 = Plg2.Find(Cel1.Value, , xlValues, xlWhole)
'si trouvé, les valeurs saisies manuellement sont reportées en feuille "Base 2"
'ici, j'ai supposé que les valeurs se trouvent à partir de la colonne J, adapter !
If Not Cel1 Is Nothing Then
Cel2.Offset(, 9).Value = Cel1.Offset(, 9).Value 'colonne J
Cel2.Offset(, 10).Value = Cel1.Offset(, 10).Value 'colonne K
Cel2.Offset(, 11).Value = Cel1.Offset(, 11).Value 'colonne L
End If
Next Cel1
End Sub |
Partager