Bonsoir à tous,
Une autre version :
Option Explicit
Sub test()
Dim a, b(), i As Long, j As Byte, k As Byte, n As Long
a = Sheets("Sheet2").[a1].CurrentRegion.Value
ReDim b(1 To (UBound(a, 1) - 1) / 4, 1 To (UBound(a, 2) - 2) * 4 + 1)
For i = 2 To UBound(a, 1) Step 4
n = n + 1
b(n, 1) = a(i, 1)
For j = 1 To 4
k = k + 1
b(n, j + k) = a(i + j - 1, 3)
b(n, j + k + 1) = a(i + j - 1, 4)
Next
k = 0
Next
'Restitution
With Sheets("Sheet1").Cells(1).CurrentRegion
With .Offset(1).Resize(.Rows.Count - 1)
.ClearContents
.Value = b
End With
End With
End Sub
klin89