Bonjour
Ci dessous un code à tester
Sub recordattente()
Dim Orig As Variant, dlOrig As Long
Dim Dest As Variant, dlDest As Long
Dim Cellule1 As Range, Col1 As String
' recordcommande
Col1 = "A"
Orig = VBA.Array("I6", "J6", "A9", "A11", "G11")' cellule origine attention à l'ordre a modifier si on change les cellules
Dest = VBA.Array("A", "B", "C", "D", "E")' destination
With Sheets("Historique 1")
dlDest = .Range("A" & .Rows.Count).End(xlUp).Row + 1
If dlDest < 4 Then dlDest = 4
For Each Cellule1 In Sheets("Commande").Range(Col1 & "17:" & Col1 & 29)
If Cellule1 <> "" Then
For i = 0 To UBound(Orig)
If Sheets("Commande").Range(Orig(i)) <> "" Then
.Range(Dest(i) & dlDest) = Sheets("Commande").Range(Orig(i))
End If
Next i
.Range("f" & dlDest) = Cellule1
.Range("G" & dlDest) = Cellule1.Offset(0, 2)
.Range("H" & dlDest) = Cellule1.Offset(0, 4)
.Range("I" & dlDest) = Cellule1.Offset(0, 6)
'.Range("J" & dlDest) = Cellule1.Offset(0, 1)
'.Range("G" & dlDest) = Cellule1.Offset(0, 1)
'.Range("G" & dlDest) = Cellule1.Offset(0, 1)
Else
Exit For
End If
dlDest = dlDest + 1
Next Cellule1
End With
End Sub