Sub Transfert()
Dim C As Range, Ligne As Long, Plage As Range, EH As Variant, X As Range, L As Long
With Sheets("Récap CEq")
Set Plage = .Range("A10", .Cells(.Rows.Count, 1).End(xlUp))
End With
With Sheets("explication écarts")
Ligne = .Cells(.Rows.Count, 1).End(xlUp).Row
For Each C In Plage
' If C.Value = "LONGES" Then Stop
If C <> "" Then
With Sheets("Récap CEq")
EH = ""
L = C.Row
Do Until EH <> ""
EH = .Cells(L, 10)
L = L + 1
Loop
End With
Set X = Sheets("Récap CEq").Cells(C.Row, 12)
Do While Sheets("Récap CEq").Cells(X.Row, 13) <> ""
Ligne = Ligne + 1
.Cells(Ligne, 1) = Sheets("Récap CEq").[D1]
.Cells(Ligne, 2) = C
.Cells(Ligne, 3) = Sheets("Récap CEq").Cells(X.Row, 13)
.Cells(Ligne, 4) = Sheets("Récap CEq").Cells(X.Row, 14)
.Cells(Ligne, 5) = Sheets("Récap CEq").Cells(X.Row, 15)
.Cells(Ligne, 6) = EH
.Cells(Ligne, 7) = Sheets("Récap CEq").Cells(X.Row, 16)
Set X = X.Offset(1)
Loop
End If
Next C
End With
End Sub