Bonjour,
une solution possible en gérant une liste des noms de ville contenant le caractère "-" (feuille exceptions), liste à compléter en fonction des besoins, puis lancer la macro aargh via alt-F8
Sub aargh()
Set ex = Sheets("exceptions")
With Sheets("sheet1")
i = 2
While ex.Cells(i, 1) <> ""
tr = Replace(ex.Cells(i, 1), "-", "@")
.Cells.Replace ex.Cells(i, 1), tr
i = i + 1
Wend
.Columns(1).TextToColumns Destination:=.Range("B1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar:="-"
Set ex = Nothing
.Cells.Replace "@", "-"
End With
End Sub