As long as string length is the same, this event code will work.
i.e. 13 characters
Private Sub Worksheet_Change(ByVal Target As Range)
Const WS_RANGE As String = "A1:A10" 'edit to suit
Dim oval As String
oval = Target.Value
On Error GoTo ws_exit:
Application.EnableEvents = False
If Not Intersect(Target, Me.Range(WS_RANGE)) Is Nothing Then
Target.Value = Left(oval, 2) & Chr(32) & Mid(oval, 3, 3) _
& Chr(32) & Mid(oval, 6, 3) & Chr(32) & Mid(oval, 9, 3) _
& Chr(32) & Right(oval, 2)
End If
ws_exit:
Application.EnableEvents = True
End Sub
Place it in the sheet module.
Gord Dibben MS Excel MVP