Sub test()
For n = 2 To Range("A2").End(xlDown).Row
'replace(range("A" & n),"-"," ") remplace dans range("A" & n) le moins par un espace
'le resulat est repris par un nouveau replace qui remplace le + par un espace
'le Split(mots," ") cree un tableau contenant tous les items de mots séparés par un espace
x = Split(Replace(Replace(Range("A" & n), "-", " "), "+", " "), " ")
'ecriture des items du tableau x
For m = LBound(x) To UBound(x)
Cells(n, m + 2) = x(m)
Next m
Next n
End Sub