Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range, d As Range, t(5) As String, s As String
Dim x As Integer
Set c = Intersect(Target, Range("A:A"))
If c Is Nothing Then Exit Sub
Application.EnableEvents = False
For Each d In c
s = Replace(d, "-", "")
If s <> "" Then
For x = 0 To 5
t(x) = Mid(s, (x * 2) + 1, 2)
Next x
Target = UCase(Join(t, "-"))
End If
Next
Application.EnableEvents = True
End Sub