Sub test1()
Dim a, b(), i As Long, j As Long, n As Long
With Sheets("Feuil1").Range("a2").CurrentRegion
a = Application.Index(.Value, Evaluate("row(1:" & _
.Rows.Count & ")"), Array(1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14))
ReDim b(1 To Application.CountA(.Cells), 1 To 3)
End With
For i = 2 To UBound(a, 1)
For j = 2 To UBound(a, 2)
n = n + 1
b(n, 1) = a(i, 1)
b(n, 2) = a(1, j)
b(n, 3) = a(i, j)
Next
Next
With Sheets("Feuil2").Cells(1)
.CurrentRegion.Clear
With .Resize(n, 3)
.Value = b
On Error Resume Next
.Columns(3).SpecialCells(xlCellTypeBlanks) = 0
On Error GoTo 0
End With
End With
End Sub