Sub Eclater()
Dim sep$, tablo, resu(), i&, s, x, j%, n&
sep = ";"
With [A1].CurrentRegion.Resize(, 2)
tablo = .Value
ReDim resu(1 To Rows.Count, 1 To 2)
For i = 1 To UBound(tablo)
s = Split(tablo(i, 2), sep)
x = tablo(i, 1)
If UBound(s) = -1 Then n = n + 1: resu(n, 1) = x
For j = 0 To UBound(s)
n = n + 1
resu(n, 1) = x
resu(n, 2) = s(j)
Next j, i
.Resize(n) = resu
.Resize(n).Borders.Weight = xlThin 'bordures
End With
End Sub