Isso parece ser um comportamento conhecido no Excel.
Você pode usar uma macro para preservar a formatação do texto e executar um localizar / substituir. Use a seguinte sub-rotina:
Sub RemoveHyphen(RangeString As String)
For Each Cell In Range(RangeString)
Cell.NumberFormat = "@"
Cell.Value = Replace(Cell.Value, "-", "")
Next Cell
End Sub
Chame a sub-rotina com RemoveHyphen("A1:A7")
na janela imediata do VBA. Ele formatará todas as células como texto e removerá os hipensos.