Sub Essai()
a = [a2:A5]
b = [b2:b5]
c = Empilement(Range("a2:A5"), Range("b2:b5"))
[K2:K9] = c
e = Empilement(Empilement(a, b), a)
[N2:N13] = e
End Sub
Function Empilement(Tab1, Tab2)
Dim c()
On Error Resume Next
tmp = Application.Caller.Rows.Count
If Err = 0 Then
ReDim c(1 To Application.Caller.Rows.Count)
Else
ReDim c(1 To UBound(Tab1) + UBound(Tab2))
If Err > 0 Then ReDim c(1 To Tab1.Count + Tab2.Count)
End If
On Error GoTo 0
For Each k In Tab1: i = i + 1: c(i) = k: Next
For Each k In Tab2: i = i + 1: c(i) = k: Next
Empilement = Application.Transpose(c)
End Function