Based on the examples - perhaps something along the lines of:

Sub Example()
    Dim v1 As Variant, vTemp As Variant
    Dim lngD1 As Long, lngD2 As Long
    Dim strTemp As String
    With Selection
        v1 = .Value
        For lngD2 = LBound(v1, 2) To UBound(v1, 2) Step 1
            For lngD1 = LBound(v1, 1) To UBound(v1, 1) Step 1
                vTemp = Split(v1(lngD1, lngD2), ":")
                v1(lngD1, lngD2) = vTemp(0)
                vTemp = Split(vTemp(1), ",")
                If UBound(vTemp) < 1 Then
                    strTemp = vTemp(0)
                Else
                    strTemp = vTemp(1) & " -" & vTemp(0)
                End If
                v1(lngD1, lngD2) = v1(lngD1, lngD2) & ":" & strTemp
            Next lngD1
        Next lngD2
        .Value = v1
    End With
End Sub