Page 2 of 3 FirstFirst 123 LastLast
Results 11 to 20 of 24

Thread: Convert Symbols to letters
Thanks Thanks: 0 Likes Likes: 0

  1. #11
    New Member
    Join Date
    Feb 2014
    Posts
    1
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Default Re: Convert Symbols to letters

    Hi, briljant code!

    I have a question.

    Is his VBA script also available to remove listed characters? I want to build a simular script to remove the following characters:
    Ω      
                  . . . . ! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~  . ƒ ˆ Š Œ Ž . ˜ š œ . ž Ÿ . ­


    Hope you can help me and many thanks in advance..!

    rgds, Arno

  2. #12
    MrExcel MVP Rick Rothstein's Avatar
    Join Date
    Apr 2011
    Location
    New Jersey, USA
    Posts
    34,748
    Post Thanks / Like
    Mentioned
    88 Post(s)
    Tagged
    31 Thread(s)

    Default Re: Convert Symbols to letters

    Quote Originally Posted by pgc01 View Post
    ... and this is the definition of the 2 arrays used to remove the diacritics.

    Insert a new module and paste:

    Code:
    Option Explicit
     
    Public tblRemoveDiacriticsCodes(1 To 316)
    Public tblRemoveDiacriticsChars(1 To 316)
    
    ' Letter A - Unicode Character Codes
     
        ' Letter A - Small Case
     
        ' A WITH ACUTE, LATIN SMALL LETTER                  0x00E1
        ' A WITH BREVE, LATIN SMALL LETTER                  0x0103
       
     [[snipped for space]]>
    I realize this is an old thread, but it was recently referenced in another thread. PGC... I am in awe of the work you put into the code you posted (it would never have occurred to me that there were that many accented characters). Anyway, I decided to condense your code into a function and thought the readers of this thread might find it useful. The argument to the function can be the ASCII/ANSI code number for an accented character or the actual accented character itself (the function will figure out which it is on its own)...the function will return the unaccented char for it.

    Code:
    Function Diacritic2Char(Diacritic As Variant) As String
      Dim Codes As String, Letters As String, LeftOfCode As String
      Const NormalChars As String = " !""#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdef" & _
                                    "ghijklmnopqrstuvwxyz{|}~ ­" & _
                                    ""
      Codes = "/225/259/462/226/228/551/7841/513/224/7843/515/257/261/7834/229/7681/227/193/194/196/192/197/" & _
              "570/195/7683/7685/595/7687/384/387/385/579/263/269/231/265/597/267/392/572/199/571/598/271/" & _
              "7697/7699/545/7691/7693/599/7695/273/598/396/394/233/277/283/553/7705/234/235/279/7865/517/" & _
              "232/7867/605/519/275/281/583/7707/7869/201/202/203/200/582/7711/402/501/287/487/291/285/289/" & _
              "667/608/7713/485/403/7723/543/7721/293/7719/7715/7717/686/614/7830/295/237/301/464/238/239/" & _
              "7883/521/236/7881/523/299/303/616/7725/297/407/304/205/206/207/304/204/407/496/309/669/585/" & _
              "607/584/7729/489/311/7731/409/7733/314/410/620/318/316/7741/564/7735/7739/320/619/621/7436/" & _
              "322/573/7743/7745/7747/625/624/324/328/326/7755/565/7749/7751/505/626/7753/414/627/241/413/" & _
              "544/209/629/339/248/243/335/466/244/246/559/7885/337/525/242/7887/417/527/333/491/248/7443/" & _
              "245/415/216/211/212/214/210/415/216/213/7765/7767/421/587/672/586/341/345/343/7769/7771/529/" & _
              "638/639/635/531/7775/636/634/589/637/588/347/353/351/349/537/7777/7835/7779/642/575/357/355/" & _
              "7793/539/566/7831/7787/7789/429/7791/427/648/359/574/430/649/250/365/468/7799/251/7795/252/" & _
              "7909/369/533/249/7911/432/535/363/371/367/7797/361/580/218/219/220/217/7807/651/7805/434/" & _
              "7811/373/7813/7815/7817/7809/7832/7821/7819/253/375/255/7823/7925/7923/7927/436/563/7833/" & _
              "591/7929/221/376/590/438/378/382/7825/657/380/7827/549/7829/656/438/576/"
      Letters = "aaaaaaaaaaaaaaaaaAAAAAAAbbbbbbBBccccccccCCddddddddddddDeeeeeeeeeeeeeeeeeeeEEEEE" & _
                "ffggggggggggGhhhhhhhhhhhiiiiiiiiiiiiiiiIIIIIIIIjjjjjJkkkkkkllllllllllllllLmmmmm" & _
                "nnnnnnnnnnnnnNNNoooooooooooooooooooooOOOOOOOOOpppqqQrrrrrrrrrrrrrrrRsssssssssst" & _
                "ttttttttttttTTuuuuuuuuuuuuuuuuuuuuUUUUUvvvVwwwwwwwxxyyyyyyyyyyyyYYYzzzzzzzzzzzz"
      If Diacritic Like "*[!0-9]*" Then
        If InStr(NormalChars, Diacritic) Then
          Diacritic = Asc(Diacritic)
        Else
          Diacritic = AscW(Diacritic)
        End If
      End If
      LeftOfCode = Left(Codes, InStr(Codes, "/" & Diacritic & "/"))
      Diacritic2Char = Mid(Letters, Len(LeftOfCode) - Len(Replace(LeftOfCode, "/", "")), 1)
    End Function
    Rick's "mini" blog... http://www.excelfox.com/forum/f22/
    .
    Want to post a small screen shot? See Part B here.

  3. #13
    MrExcel MVP
    Join Date
    Apr 2006
    Posts
    19,644
    Post Thanks / Like
    Mentioned
    14 Post(s)
    Tagged
    2 Thread(s)

    Default Re: Convert Symbols to letters

    Hi

    This is an update from the solution.

    I included much more characters in the tables. I tried to include all simple latin characters with diacritics. I may have missed some. If that is the case I'll update this solution.

    In one module paste this test the input is A1:A10 and the output in C1:C10 so that it's easy to compare both.
    The replacement of the characters can, however, be done in situ.

    You'll see that it's very easy to adapt this to your real code.

    Paste in one module:

    Code:
    Option Explicit
    
    Sub RemoveDiacritics()
    Dim rIn As Range, rOut As Range
    Dim j As Long, lCode As Long
    
    ' removes diacritics from the text in column A
    ' in this test the output goes to column C
    Set rIn = Range("A1:A10")
    Set rOut = rIn.Offset(, 2)
    rOut.Value = rIn.Value
    
    Call LoadRemoveDiacriticsTables
    
    For j = 1 To UBound(tblRemoveDiacriticsCodes)
        rOut.Replace ChrW(tblRemoveDiacriticsCodes(j)), tblRemoveDiacriticsChars(j), LookAt:=xlPart, MatchCase:=True
    Next j
    End Sub

    Paste in another module the code that loads the tables with the characters with the diacritics and their replacement:
    Remark: I included in the code comments the hex code and the name of the characters that are considered. I did not include the characters themselves because most of them are not displayed in the vba editor.


    Code:
    Option Explicit
     
    Public tblRemoveDiacriticsCodes(1 To 565)
    Public tblRemoveDiacriticsChars(1 To 565)
     
    ' Unicode Character Codes included:
     
    'Letter a A - Unicode Character Codes
    
    'U+00E0    Latin Small Letter A with grave
    'U+00E1    Latin Small Letter A with acute
    'U+00E2    Latin Small Letter A with circumflex
    'U+00E3    Latin Small Letter A with tilde
    'U+00E4    Latin Small Letter A with diaeresis
    'U+00E5    Latin Small Letter A with ring above
    'U+0101    Latin Small Letter A with macron
    'U+0103    Latin Small Letter A with breve
    'U+0105    Latin Small Letter A with ogonek
    'U+01CE    Latin Small Letter A with caron
    'U+01DF    Latin Small Letter A with diaeresis and macron
    'U+01E1    Latin Small Letter A with dot above and macron
    'U+01FB    Latin Small Letter A with ring above and acute
    'U+0201    Latin Small Letter A with double grave
    'U+0203    Latin Small Letter A with inverted breve
    'U+0227    Latin Small Letter A with dot above
    'U+1E01    Latin Small Letter A with ring below
    'U+1E9A    Latin Small Letter A with right half ring
    'U+1EA1    Latin Small Letter A with dot below
    'U+1EA3    Latin Small Letter A with hook above
    'U+1EA5    Latin Small Letter A with circumflex and acute
    'U+1EA7    Latin Small Letter A with circumflex and grave
    'U+1EA9    Latin Small Letter A with circumflex and hook above
    'U+1EAB    Latin Small Letter A with circumflex and tilde
    'U+1EAD    Latin Small Letter A with circumflex and dot below
    'U+1EAF    Latin Small Letter A with breve and acute
    'U+1EB1    Latin Small Letter A with breve and grave
    'U+1EB3    Latin Small Letter A with breve and hook above
    'U+1EB5    Latin Small Letter A with breve and tilde
    'U+1EB7    Latin Small Letter A with breve and dot below
    'U+00C0    Latin Capital Letter A with grave
    'U+00C1    Latin Capital letter A with acute
    'U+00C2    Latin Capital letter A with circumflex
    'U+00C3    Latin Capital letter A with tilde
    'U+00C4    Latin Capital letter A with diaeresis
    'U+00C5    Latin Capital letter A with ring above
    'U+0100    Latin Capital Letter A with macron
    'U+0102    Latin Capital Letter A with breve
    'U+0104    Latin Capital Letter A with ogonek
    'U+01CD    Latin Capital Letter A with caron
    'U+01DE    Latin Capital Letter A with diaeresis and macron
    'U+01E0    Latin Capital Letter A with dot above and macron
    'U+01FA    Latin Capital Letter A with ring above and acute
    'U+0200    Latin Capital Letter A with double grave
    'U+0202    Latin Capital Letter A with inverted breve
    'U+0226    Latin Capital Letter A with dot above
    'U+023A    Latin Capital Letter A with stroke
    'U+1E00    Latin Capital Letter A with ring below
    'U+1EA0    Latin Capital Letter A with dot below
    'U+1EA2    Latin Capital Letter A with hook above
    'U+1EA4    Latin Capital Letter A with circumflex and acute
    'U+1EA6    Latin Capital Letter A with circumflex and grave
    'U+1EA8    Latin Capital Letter A with circumflex and hook above
    'U+1EAA    Latin Capital Letter A with circumflex and tilde
    'U+1EAC    Latin Capital Letter A with circumflex and dot below
    'U+1EAE    Latin Capital Letter A with breve and acute
    'U+1EB0    Latin Capital Letter A with breve and grave
    'U+1EB2    Latin Capital Letter A with breve and hook above
    'U+1EB4    Latin Capital Letter A with breve and tilde
    'U+1EB6    Latin Capital Letter A with breve and dot below
    
    'Letter b B - Unicode Character Codes
    
    'U+0180    Latin Small Letter B with stroke
    'U+0183    Latin Small Letter B with top bar
    'U+1E03    Latin Small Letter B with dot above
    'U+1E05    Latin Small Letter B with dot below
    'U+1E07    Latin Small Letter B with line below
    'U+0181    Latin Capital Letter B with hook
    'U+0182    Latin Capital Letter B with top bar
    'U+0243    Latin Capital Letter B with stroke
    'U+1E02    Latin Capital Letter B with dot above
    'U+1E04    Latin Capital Letter B with dot below
    'U+1E06    Latin Capital Letter B with line below
    
    'Letter c C - Unicode Character Codes
    
    'U+00E7    Latin Small Letter C with cedilla
    'U+0107    Latin Small Letter C with acute
    'U+0109    Latin Small Letter C with circumflex
    'U+010B    Latin Small Letter C with dot above
    'U+010D    Latin Small Letter C with caron
    'U+0188    Latin Small Letter C with hook
    'U+023C    Latin Small Letter C with stroke
    'U+1E09    Latin Small Letter C with cedilla and acute
    'U+00C7    Latin Capital letter C with cedilla
    'U+0106    Latin Capital Letter C with acute
    'U+0108    Latin Capital Letter C with circumflex
    'U+010A    Latin Capital Letter C with dot above
    'U+010C    Latin Capital Letter C with caron
    'U+0187    Latin Capital Letter C with hook
    'U+023B    Latin Capital Letter C with stroke
    'U+1E08    Latin Capital Letter C with cedilla and acute
    
    'Letter d D - Unicode Character Codes
    
    'U+010F    Latin Small Letter D with caron
    'U+0111    Latin Small Letter D with stroke
    'U+018C    Latin Small Letter D with top bar
    'U+0221    Latin Small Letter D with curl
    'U+1E0B    Latin Small Letter D with dot above
    'U+1E0D    Latin Small Letter D with dot below
    'U+1E0F    Latin Small Letter D with line below
    'U+1E11    Latin Small Letter D with cedilla
    'U+1E13    Latin Small Letter D with circumflex below
    'U+010E    Latin Capital Letter D with caron
    'U+0110    Latin Capital Letter D with stroke
    'U+018A    Latin Capital Letter D with hook
    'U+018B    Latin Capital Letter D with top bar
    'U+01C5    Latin Capital Letter D with Small Letter Z with caron
    'U+01F2    Latin Capital Letter D with Small Letter Z
    'U+1E0A    Latin Capital Letter D with dot above
    'U+1E0C    Latin Capital Letter D with dot below
    'U+1E0E    Latin Capital Letter D with line below
    'U+1E10    Latin Capital Letter D with cedilla
    'U+1E12    Latin Capital Letter D with circumflex below
    
    'Letter e E - Unicode Character Codes
    
    'U+00E8    Latin Small Letter E with grave
    'U+00E9    Latin Small Letter E with acute
    'U+00EA    Latin Small Letter E with circumflex
    'U+00EB    Latin Small Letter E with diaeresis
    'U+0113    Latin Small Letter E with macron
    'U+0115    Latin Small Letter E with breve
    'U+0117    Latin Small Letter E with dot above
    'U+0119    Latin Small Letter E with ogonek
    'U+011B    Latin Small Letter E with caron
    'U+0205    Latin Small Letter E with double grave
    'U+0207    Latin Small Letter E with inverted breve
    'U+0229    Latin Small Letter E with cedilla
    'U+0247    Latin Small Letter E with stroke
    'U+1E15    Latin Small Letter E with macron and grave
    'U+1E17    Latin Small Letter E with macron and acute
    'U+1E19    Latin Small Letter E with circumflex below
    'U+1E1B    Latin Small Letter E with tilde below
    'U+1E1D    Latin Small Letter E with cedilla and breve
    'U+1EB9    Latin Small Letter E with dot below
    'U+1EBB    Latin Small Letter E with hook above
    'U+1EBD    Latin Small Letter E with tilde
    'U+1EBF    Latin Small Letter E with circumflex and acute
    'U+1EC1    Latin Small Letter E with circumflex and grave
    'U+1EC3    Latin Small Letter E with circumflex and hook above
    'U+1EC5    Latin Small Letter E with circumflex and tilde
    'U+1EC7    Latin Small Letter E with circumflex and dot below
    'U+00C8    Latin Capital letter E with grave
    'U+00C9    Latin Capital letter E with acute
    'U+00CA    Latin Capital letter E with circumflex
    'U+00CB    Latin Capital letter E with diaeresis
    'U+0112    Latin Capital Letter E with macron
    'U+0114    Latin Capital Letter E with breve
    'U+0116    Latin Capital Letter E with dot above
    'U+0118    Latin Capital Letter E with ogonek
    'U+011A    Latin Capital Letter E with caron
    'U+0204    Latin Capital Letter E with double grave
    'U+0206    Latin Capital Letter E with inverted breve
    'U+0228    Latin Capital Letter E with cedilla
    'U+0246    Latin Capital Letter E with stroke
    'U+1E14    Latin Capital Letter E with macron and grave
    'U+1E16    Latin Capital Letter E with macron and acute
    'U+1E18    Latin Capital Letter E with circumflex below
    'U+1E1A    Latin Capital Letter E with tilde below
    'U+1E1C    Latin Capital Letter E with cedilla and breve
    'U+1EB8    Latin Capital Letter E with dot below
    'U+1EBA    Latin Capital Letter E with hook above
    'U+1EBC    Latin Capital Letter E with tilde
    'U+1EBE    Latin Capital Letter E with circumflex and acute
    'U+1EC0    Latin Capital Letter E with circumflex and grave
    'U+1EC2    Latin Capital Letter E with circumflex and hook above
    'U+1EC4    Latin Capital Letter E with circumflex and tilde
    'U+1EC6    Latin Capital Letter E with circumflex and dot below
    
    'Letter f F - Unicode Character Codes
    
    'U+0192    Latin Small Letter F with hook
    'U+1E1F    Latin Small Letter F with dot above
    'U+0191    Latin Capital Letter F with hook
    'U+1E1E    Latin Capital Letter F with dot above
    
    'Letter g G - Unicode Character Codes
    
    'U+011D    Latin Small Letter G with circumflex
    'U+011F    Latin Small Letter G with breve
    'U+0121    Latin Small Letter G with dot above
    'U+0123    Latin Small Letter G with cedilla
    'U+01E5    Latin Small Letter G with stroke
    'U+01E7    Latin Small Letter G with caron
    'U+01F5    Latin Small Letter G with acute
    'U+1E21    Latin Small Letter G with macron
    'U+011C    Latin Capital Letter G with circumflex
    'U+011E    Latin Capital Letter G with breve
    'U+0120    Latin Capital Letter G with dot above
    'U+0122    Latin Capital Letter G with cedilla
    'U+0193    Latin Capital Letter G with hook
    'U+01E4    Latin Capital Letter G with stroke
    'U+01E6    Latin Capital Letter G with caron
    'U+01F4    Latin Capital Letter G with acute
    'U+1E20    Latin Capital Letter G with macron
    
    'Letter h H - Unicode Character Codes
    
    'U+0125    Latin Small Letter H with circumflex
    'U+0127    Latin Small Letter H with stroke
    'U+021F    Latin Small Letter H with caron
    'U+1E23    Latin Small Letter H with dot above
    'U+1E25    Latin Small Letter H with dot below
    'U+1E27    Latin Small Letter H with diaeresis
    'U+1E29    Latin Small Letter H with cedilla
    'U+1E2B    Latin Small Letter H with breve below
    'U+1E96    Latin Small Letter H with line below
    'U+0124    Latin Capital Letter H with circumflex
    'U+0126    Latin Capital Letter H with stroke
    'U+021E    Latin Capital Letter H with caron
    'U+1E22    Latin Capital Letter H with dot above
    'U+1E24    Latin Capital Letter H with dot below
    'U+1E26    Latin Capital Letter H with diaeresis
    'U+1E28    Latin Capital Letter H with cedilla
    'U+1E2A    Latin Capital Letter H with breve below
    
    'Letter i I - Unicode Character Codes
    
    'U+00EC    Latin Small Letter I with grave
    'U+00ED    Latin Small Letter I with acute
    'U+00EE    Latin Small Letter I with circumflex
    'U+00EF    Latin Small Letter I with diaeresis
    'U+0129    Latin Small Letter I with tilde
    'U+012B    Latin Small Letter I with macron
    'U+012D    Latin Small Letter I with breve
    'U+012F    Latin Small Letter I with ogonek
    'U+01D0    Latin Small Letter I with caron
    'U+0209    Latin Small Letter I with double grave
    'U+020B    Latin Small Letter I with inverted breve
    'U+1E2D    Latin Small Letter I with tilde below
    'U+1E2F    Latin Small Letter I with diaeresis and acute
    'U+1EC9    Latin Small Letter I with hook above
    'U+1ECB    Latin Small Letter I with dot below
    'U+00CC    Latin Capital letter I with grave
    'U+00CD    Latin Capital letter I with acute
    'U+00CE    Latin Capital letter I with circumflex
    'U+00CF    Latin Capital letter I with diaeresis
    'U+0128    Latin Capital Letter I with tilde
    'U+012A    Latin Capital Letter I with macron
    'U+012C    Latin Capital Letter I with breve
    'U+012E    Latin Capital Letter I with ogonek
    'U+0130    Latin Capital Letter I with dot above
    'U+0197    Latin Capital Letter I with stroke
    'U+01CF    Latin Capital Letter I with caron
    'U+0208    Latin Capital Letter I with double grave
    'U+020A    Latin Capital Letter I with inverted breve
    'U+1E2C    Latin Capital Letter I with tilde below
    'U+1E2E    Latin Capital Letter I with diaeresis and acute
    'U+1EC8    Latin Capital Letter I with hook above
    'U+1ECA    Latin Capital Letter I with dot below
    
    'Letter j J - Unicode Character Codes
    
    'U+0135    Latin Small Letter J with circumflex
    'U+01F0    Latin Small Letter J with caron
    'U+0249    Latin Small Letter J with stroke
    'U+0134    Latin Capital Letter J with circumflex
    'U+0248    Latin Capital Letter J with stroke
    
    'Letter k K - Unicode Character Codes
    
    'U+0137    Latin Small Letter K with cedilla
    'U+0199    Latin Small Letter K with hook
    'U+01E9    Latin Small Letter K with caron
    'U+1E31    Latin Small Letter K with acute
    'U+1E33    Latin Small Letter K with dot below
    'U+1E35    Latin Small Letter K with line below
    'U+0136    Latin Capital Letter K with cedilla
    'U+0198    Latin Capital Letter K with hook
    'U+01E8    Latin Capital Letter K with caron
    'U+1E30    Latin Capital Letter K with acute
    'U+1E32    Latin Capital Letter K with dot below
    'U+1E34    Latin Capital Letter K with line below
    
    'Letter l L - Unicode Character Codes
    
    'U+013A    Latin Small Letter L with acute
    'U+013C    Latin Small Letter L with cedilla
    'U+013E    Latin Small Letter L with caron
    'U+0140    Latin Small Letter L with middle dot
    'U+0142    Latin Small Letter L with stroke
    'U+019A    Latin Small Letter L with bar
    'U+0234    Latin Small Letter L with curl
    'U+1E37    Latin Small Letter L with dot below
    'U+1E39    Latin Small Letter L with dot below and macron
    'U+1E3B    Latin Small Letter L with line below
    'U+1E3D    Latin Small Letter L with circumflex below
    'U+0139    Latin Capital Letter L with acute
    'U+013B    Latin Capital Letter L with cedilla
    'U+013D    Latin Capital Letter L with caron
    'U+013F    Latin Capital Letter L with middle dot
    'U+0141    Latin Capital Letter L with stroke
    'U+01C8    Latin Capital Letter L with Small Letter J
    'U+023D    Latin Capital Letter L with bar
    'U+1E36    Latin Capital Letter L with dot below
    'U+1E38    Latin Capital Letter L with dot below and macron
    'U+1E3A    Latin Capital Letter L with line below
    'U+1E3C    Latin Capital Letter L with circumflex below
    
    'Letter m M - Unicode Character Codes
    
    'U+1E3F    Latin Small Letter M with acute
    'U+1E41    Latin Small Letter M with dot above
    'U+1E43    Latin Small Letter M with dot below
    'U+1E3E    Latin Capital Letter M with acute
    'U+1E40    Latin Capital Letter M with dot above
    'U+1E42    Latin Capital Letter M with dot below
    
    'Letter n N - Unicode Character Codes
    
    'U+00F1    Latin Small Letter N with tilde
    'U+0144    Latin Small Letter N with acute
    'U+0146    Latin Small Letter N with cedilla
    'U+0148    Latin Small Letter N with caron
    'U+0149    Latin Small Letter N preceded by apostrophe[3]
    'U+019E    Latin Small Letter N with long right leg
    'U+01F9    Latin Small Letter N with grave
    'U+0235    Latin Small Letter N with curl
    'U+1E45    Latin Small Letter N with dot above
    'U+1E47    Latin Small Letter N with dot below
    'U+1E49    Latin Small Letter N with line below
    'U+1E4B    Latin Small Letter N with circumflex below
    'U+00D1    Latin Capital letter N with tilde
    'U+0143    Latin Capital Letter N with acute
    'U+0145    Latin Capital Letter N with cedilla
    'U+0147    Latin Capital Letter N with caron
    'U+019D    Latin Capital Letter N with left hook
    'U+01F8    Latin Capital Letter N with grave
    'U+0220    Latin Capital Letter N with long right leg
    'U+1E44    Latin Capital Letter N with dot above
    'U+1E46    Latin Capital Letter N with dot below
    'U+1E48    Latin Capital Letter N with line below
    'U+1E4A    Latin Capital Letter N with circumflex below
    
    'Letter o O - Unicode Character Codes
    
    'U+00F2    Latin Small Letter O with grave
    'U+00F3    Latin Small Letter O with acute
    'U+00F4    Latin Small Letter O with circumflex
    'U+00F5    Latin Small Letter O with tilde
    'U+00F6    Latin Small Letter O with diaeresis
    'U+00F8    Latin Small Letter O with stroke
    'U+014D    Latin Small Letter O with macron
    'U+014F    Latin Small Letter O with breve
    'U+0151    Latin Small Letter O with double acute
    'U+01A1    Latin Small Letter O with horn
    'U+01D2    Latin Small Letter O with caron
    'U+01EB    Latin Small Letter O with ogonek
    'U+01ED    Latin Small Letter O with ogonek and macron
    'U+01FF    Latin Small Letter O with stroke and acute
    'U+020D    Latin Small Letter O with double grave
    'U+020F    Latin Small Letter O with inverted breve
    'U+022B    Latin Small Letter O with diaeresis and macron
    'U+022D    Latin Small Letter O with tilde and macron
    'U+022F    Latin Small Letter O with dot above
    'U+0231    Latin Small Letter O with dot above and macron
    'U+1E4D    Latin Small Letter O with tilde and acute
    'U+1E4F    Latin Small Letter O with tilde and diaeresis
    'U+1E51    Latin Small Letter O with macron and grave
    'U+1E53    Latin Small Letter O with macron and acute
    'U+1ECD    Latin Small Letter O with dot below
    'U+1ECF    Latin Small Letter O with hook above
    'U+1ED1    Latin Small Letter O with circumflex and acute
    'U+1ED3    Latin Small Letter O with circumflex and grave
    'U+1ED5    Latin Small Letter O with circumflex and hook above
    'U+1ED7    Latin Small Letter O with circumflex and tilde
    'U+1ED9    Latin Small Letter O with circumflex and dot below
    'U+1EDB    Latin Small Letter O with horn and acute
    'U+1EDD    Latin Small Letter O with horn and grave
    'U+1EDF    Latin Small Letter O with horn and hook above
    'U+1EE1    Latin Small Letter O with horn and tilde
    'U+1EE3    Latin Small Letter O with horn and dot below
    'U+00D2    Latin Capital letter O with grave
    'U+00D3    Latin Capital letter O with acute
    'U+00D4    Latin Capital letter O with circumflex
    'U+00D5    Latin Capital letter O with tilde
    'U+00D6    Latin Capital letter O with diaeresis
    'U+00D8    Latin Capital letter O with stroke
    'U+014C    Latin Capital Letter O with macron
    'U+014E    Latin Capital Letter O with breve
    'U+0150    Latin Capital Letter O with double acute
    'U+019F    Latin Capital Letter O with middle tilde
    'U+01A0    Latin Capital Letter O with horn
    'U+01D1    Latin Capital Letter O with caron
    'U+01EA    Latin Capital Letter O with ogonek
    'U+01EC    Latin Capital Letter O with ogonek and macron
    'U+01FE    Latin Capital Letter O with stroke and acute
    'U+020C    Latin Capital Letter O with double grave
    'U+020E    Latin Capital Letter O with inverted breve
    'U+022A    Latin Capital Letter O with diaeresis and macron
    'U+022C    Latin Capital Letter O with tilde and macron
    'U+022E    Latin Capital Letter O with dot above
    'U+0230    Latin Capital Letter O with dot above and macron
    'U+1E4C    Latin Capital Letter O with tilde and acute
    'U+1E4E    Latin Capital Letter O with tilde and diaeresis
    'U+1E50    Latin Capital Letter O with macron and grave
    'U+1E52    Latin Capital Letter O with macron and acute
    'U+1ECC    Latin Capital Letter O with dot below
    'U+1ECE    Latin Capital Letter O with hook above
    'U+1ED0    Latin Capital Letter O with circumflex and acute
    'U+1ED2    Latin Capital Letter O with circumflex and grave
    'U+1ED4    Latin Capital Letter O with circumflex and hook above
    'U+1ED6    Latin Capital Letter O with circumflex and tilde
    'U+1ED8    Latin Capital Letter O with circumflex and dot below
    'U+1EDA    Latin Capital Letter O with horn and acute
    'U+1EDC    Latin Capital Letter O with horn and grave
    'U+1EDE    Latin Capital Letter O with horn and hook above
    'U+1EE0    Latin Capital Letter O with horn and tilde
    'U+1EE2    Latin Capital Letter O with horn and dot below
    
    'Letter p P - Unicode Character Codes
    
    'U+01A5    Latin Small Letter P with hook
    'U+1E55    Latin Small Letter P with acute
    'U+1E57    Latin Small Letter P with dot above
    'U+01A4    Latin Capital Letter P with hook
    'U+1E54    Latin Capital Letter P with acute
    'U+1E56    Latin Capital Letter P with dot above
    
    'Letter q Q - Unicode Character Codes
    
    'U+024B    Latin Small Letter Q with hook tail
    'U+024A    Latin Capital Letter Q with hook tail
    
    'Letter r R - Unicode Character Codes
    
    'U+0155    Latin Small Letter R with acute
    'U+0157    Latin Small Letter R with cedilla
    'U+0159    Latin Small Letter R with caron
    'U+0211    Latin Small Letter R with double grave
    'U+0213    Latin Small Letter R with inverted breve
    'U+024D    Latin Small Letter R with stroke
    'U+1E59    Latin Small Letter R with dot above
    'U+1E5B    Latin Small Letter R with dot below
    'U+1E5D    Latin Small Letter R with dot below and macron
    'U+1E5F    Latin Small Letter R with line below
    'U+0154    Latin Capital Letter R with acute
    'U+0156    Latin Capital Letter R with cedilla
    'U+0158    Latin Capital Letter R with caron
    'U+0210    Latin Capital Letter R with double grave
    'U+0212    Latin Capital Letter R with inverted breve
    'U+024C    Latin Capital Letter R with stroke
    'U+1E58    Latin Capital Letter R with dot above
    'U+1E5A    Latin Capital Letter R with dot below
    'U+1E5C    Latin Capital Letter R with dot below and macron
    'U+1E5E    Latin Capital Letter R with line below
    
    'Letter s S - Unicode Character Codes
    
    'U+015B    Latin Small Letter S with acute
    'U+015D    Latin Small Letter S with circumflex
    'U+015F    Latin Small Letter S with cedilla
    'U+0161    Latin Small Letter S with caron
    'U+0219    Latin Small Letter S with comma below
    'U+023F    Latin Small Letter S with swash tail
    'U+1E61    Latin Small Letter S with dot above
    'U+1E63    Latin Small Letter S with dot below
    'U+1E65    Latin Small Letter S with acute and dot above
    'U+1E67    Latin Small Letter S with caron and dot above
    'U+1E69    Latin Small Letter S with dot below and dot above
    'U+015A    Latin Capital Letter S with acute
    'U+015C    Latin Capital Letter S with circumflex
    'U+015E    Latin Capital Letter S with cedilla
    'U+0160    Latin Capital Letter S with caron
    'U+0218    Latin Capital Letter S with comma below
    'U+1E60    Latin Capital Letter S with dot above
    'U+1E62    Latin Capital Letter S with dot below
    'U+1E64    Latin Capital Letter S with acute and dot above
    'U+1E66    Latin Capital Letter S with caron and dot above
    'U+1E68    Latin Capital Letter S with dot below and dot above
    
    'Letter t T - Unicode Character Codes
    
    'U+0163    Latin Small Letter T with cedilla
    'U+0165    Latin Small Letter T with caron
    'U+0167    Latin Small Letter T with stroke
    'U+01AB    Latin Small Letter T with palatal hook
    'U+01AD    Latin Small Letter T with hook
    'U+021B    Latin Small Letter T with comma below
    'U+0236    Latin Small Letter T with curl
    'U+1E6B    Latin Small Letter T with dot above
    'U+1E6D    Latin Small Letter T with dot below
    'U+1E6F    Latin Small Letter T with line below
    'U+1E71    Latin Small Letter T with circumflex below
    'U+1E97    Latin Small Letter T with diaeresis
    'U+0162    Latin Capital Letter T with cedilla
    'U+0164    Latin Capital Letter T with caron
    'U+0166    Latin Capital Letter T with stroke
    'U+01AC    Latin Capital Letter T with hook
    'U+01AE    Latin Capital Letter T with retroflex hook
    'U+021A    Latin Capital Letter T with comma below
    'U+023E    Latin Capital Letter T with diagonal stroke
    'U+1E6A    Latin Capital Letter T with dot above
    'U+1E6C    Latin Capital Letter T with dot below
    'U+1E6E    Latin Capital Letter T with line below
    'U+1E70    Latin Capital Letter T with circumflex below
    
    'Letter u U - Unicode Character Codes
    
    'U+00F9    Latin Small Letter U with grave
    'U+00FA    Latin Small Letter U with acute
    'U+00FB    Latin Small Letter U with circumflex
    'U+00FC    Latin Small Letter U with diaeresis
    'U+0169    Latin Small Letter U with tilde
    'U+016B    Latin Small Letter U with macron
    'U+016D    Latin Small Letter U with breve
    'U+016F    Latin Small Letter U with ring above
    'U+0171    Latin Small Letter U with double acute
    'U+0173    Latin Small Letter U with ogonek
    'U+01B0    Latin Small Letter U with horn
    'U+01D4    Latin Small Letter U with caron
    'U+01D6    Latin Small Letter U with diaeresis and macron
    'U+01D8    Latin Small Letter U with diaeresis and acute
    'U+01DA    Latin Small Letter U with diaeresis and caron
    'U+01DC    Latin Small Letter U with diaeresis and grave
    'U+0215    Latin Small Letter U with double grave
    'U+0217    Latin Small Letter U with inverted breve
    'U+1E73    Latin Small Letter U with diaeresis below
    'U+1E75    Latin Small Letter U with tilde below
    'U+1E77    Latin Small Letter U with circumflex below
    'U+1E79    Latin Small Letter U with tilde and acute
    'U+1E7B    Latin Small Letter U with macron and diaeresis
    'U+1EE5    Latin Small Letter U with dot below
    'U+1EE7    Latin Small Letter U with hook above
    'U+1EE9    Latin Small Letter U with horn and acute
    'U+1EEB    Latin Small Letter U with horn and grave
    'U+1EED    Latin Small Letter U with horn and hook above
    'U+1EEF    Latin Small Letter U with horn and tilde
    'U+1EF1    Latin Small Letter U with horn and dot below
    'U+00D9    Latin Capital letter U with grave
    'U+00DA    Latin Capital letter U with acute
    'U+00DB    Latin Capital Letter U with circumflex
    'U+00DC    Latin Capital Letter U with diaeresis
    'U+0168    Latin Capital Letter U with tilde
    'U+016A    Latin Capital Letter U with macron
    'U+016C    Latin Capital Letter U with breve
    'U+016E    Latin Capital Letter U with ring above
    'U+0170    Latin Capital Letter U with double acute
    'U+0172    Latin Capital Letter U with ogonek
    'U+01AF    Latin Capital Letter U with horn
    'U+01D3    Latin Capital Letter U with caron
    'U+01D5    Latin Capital Letter U with diaeresis and macron
    'U+01D7    Latin Capital Letter U with diaeresis and acute
    'U+01D9    Latin Capital Letter U with diaeresis and caron
    'U+01DB    Latin Capital Letter U with diaeresis and grave
    'U+0214    Latin Capital Letter U with double grave
    'U+0216    Latin Capital Letter U with inverted breve
    'U+0244    Latin Capital Letter U bar
    'U+1E72    Latin Capital Letter U with diaeresis below
    'U+1E74    Latin Capital Letter U with tilde below
    'U+1E76    Latin Capital Letter U with circumflex below
    'U+1E78    Latin Capital Letter U with tilde and acute
    'U+1E7A    Latin Capital Letter U with macron and diaeresis
    'U+1EE4    Latin Capital Letter U with dot below
    'U+1EE6    Latin Capital Letter U with hook above
    'U+1EE8    Latin Capital Letter U with horn and acute
    'U+1EEA    Latin Capital Letter U with horn and grave
    'U+1EEC    Latin Capital Letter U with horn and hook above
    'U+1EEE    Latin Capital Letter U with horn and tilde
    'U+1EF0    Latin Capital Letter U with horn and dot below
    
    'Letter v V - Unicode Character Codes
    
    'U+1E7D    Latin Small Letter V with tilde
    'U+1E7F    Latin Small Letter V with dot below
    'U+01B2    Latin Capital Letter V with hook
    'U+1E7C    Latin Capital Letter V with tilde
    'U+1E7E    Latin Capital Letter V with dot below
    
    'Letter w W - Unicode Character Codes
    
    'U+0175    Latin Small Letter W with circumflex
    'U+1E81    Latin Small Letter W with grave
    'U+1E83    Latin Small Letter W with acute
    'U+1E85    Latin Small Letter W with diaeresis
    'U+1E87    Latin Small Letter W with dot above
    'U+1E89    Latin Small Letter W with dot below
    'U+1E98    Latin Small Letter W with ring above
    'U+0174    Latin Capital Letter W with circumflex
    'U+1E80    Latin Capital Letter W with grave
    'U+1E82    Latin Capital Letter W with acute
    'U+1E84    Latin Capital Letter W with diaeresis
    'U+1E86    Latin Capital Letter W with dot above
    'U+1E88    Latin Capital Letter W with dot below
    
    'Letter x X - Unicode Character Codes
    
    'U+1E8B    Latin Small Letter X with dot above
    'U+1E8D    Latin Small Letter X with diaeresis
    'U+1E8A    Latin Capital Letter X with dot above
    'U+1E8C    Latin Capital Letter X with diaeresis
    
    'Letter y Y - Unicode Character Codes
    
    'U+00FD    Latin Small Letter Y with acute
    'U+00FF    Latin Small Letter Y with diaeresis
    'U+0177    Latin Small Letter Y with circumflex
    'U+01B4    Latin Small Letter Y with hook
    'U+0233    Latin Small Letter Y with macron
    'U+024F    Latin Small Letter Y with stroke
    'U+1E8F    Latin Small Letter Y with dot above
    'U+1E99    Latin Small Letter Y with ring above
    'U+1EF3    Latin Small Letter Y with grave
    'U+1EF5    Latin Small Letter Y with dot below
    'U+1EF7    Latin Small Letter Y with hook above
    'U+1EF9    Latin Small Letter Y with tilde
    'U+00DD    Latin Capital Letter Y with acute
    'U+0176    Latin Capital Letter Y with circumflex
    'U+0178    Latin Capital Letter Y with diaeresis
    'U+01B3    Latin Capital Letter Y with hook
    'U+0232    Latin Capital Letter Y with macron
    'U+024E    Latin Capital Letter Y with stroke
    'U+1E8E    Latin Capital Letter Y with dot above
    'U+1EF2    Latin Capital Letter Y with grave
    'U+1EF4    Latin Capital Letter Y with dot below
    'U+1EF6    Latin Capital Letter Y with hook above
    'U+1EF8    Latin Capital Letter Y with tilde
    
    'Letter z Z - Unicode Character Codes
    
    'U+017A    Latin Small Letter Z with acute
    'U+017C    Latin Small Letter Z with dot above
    'U+017E    Latin Small Letter Z with caron
    'U+01B6    Latin Small Letter Z with stroke
    'U+0225    Latin Small Letter Z with hook
    'U+0240    Latin Small Letter Z with swash tail
    'U+1E91    Latin Small Letter Z with circumflex
    'U+1E93    Latin Small Letter Z with dot below
    'U+1E95    Latin Small Letter Z with line below
    'U+0179    Latin Capital Letter Z with acute
    'U+017B    Latin Capital Letter Z with dot above
    'U+017D    Latin Capital Letter Z with caron
    'U+01B5    Latin Capital Letter Z with stroke
    'U+0224    Latin Capital Letter Z with hook
    'U+1E90    Latin Capital Letter Z with circumflex
    'U+1E92    Latin Capital Letter Z with dot below
    'U+1E94    Latin Capital Letter Z with line below
     
    Sub LoadRemoveDiacriticsTables()
     
    tblRemoveDiacriticsCodes(1) = &HE0:          tblRemoveDiacriticsChars(1) = "a"
    tblRemoveDiacriticsCodes(2) = &HE1:          tblRemoveDiacriticsChars(2) = "a"
    tblRemoveDiacriticsCodes(3) = &HE2:          tblRemoveDiacriticsChars(3) = "a"
    tblRemoveDiacriticsCodes(4) = &HE3:          tblRemoveDiacriticsChars(4) = "a"
    tblRemoveDiacriticsCodes(5) = &HE4:          tblRemoveDiacriticsChars(5) = "a"
    tblRemoveDiacriticsCodes(6) = &HE5:          tblRemoveDiacriticsChars(6) = "a"
    tblRemoveDiacriticsCodes(7) = &H101:         tblRemoveDiacriticsChars(7) = "a"
    tblRemoveDiacriticsCodes(8) = &H103:         tblRemoveDiacriticsChars(8) = "a"
    tblRemoveDiacriticsCodes(9) = &H105:         tblRemoveDiacriticsChars(9) = "a"
    tblRemoveDiacriticsCodes(10) = &H1CE:         tblRemoveDiacriticsChars(10) = "a"
    tblRemoveDiacriticsCodes(11) = &H1DF:         tblRemoveDiacriticsChars(11) = "a"
    tblRemoveDiacriticsCodes(12) = &H1E1:         tblRemoveDiacriticsChars(12) = "a"
    tblRemoveDiacriticsCodes(13) = &H1FB:         tblRemoveDiacriticsChars(13) = "a"
    tblRemoveDiacriticsCodes(14) = &H201:         tblRemoveDiacriticsChars(14) = "a"
    tblRemoveDiacriticsCodes(15) = &H203:         tblRemoveDiacriticsChars(15) = "a"
    tblRemoveDiacriticsCodes(16) = &H227:         tblRemoveDiacriticsChars(16) = "a"
    tblRemoveDiacriticsCodes(17) = &H1E01:        tblRemoveDiacriticsChars(17) = "a"
    tblRemoveDiacriticsCodes(18) = &H1E9A:        tblRemoveDiacriticsChars(18) = "a"
    tblRemoveDiacriticsCodes(19) = &H1EA1:        tblRemoveDiacriticsChars(19) = "a"
    tblRemoveDiacriticsCodes(20) = &H1EA3:        tblRemoveDiacriticsChars(20) = "a"
    tblRemoveDiacriticsCodes(21) = &H1EA5:        tblRemoveDiacriticsChars(21) = "a"
    tblRemoveDiacriticsCodes(22) = &H1EA7:        tblRemoveDiacriticsChars(22) = "a"
    tblRemoveDiacriticsCodes(23) = &H1EA9:        tblRemoveDiacriticsChars(23) = "a"
    tblRemoveDiacriticsCodes(24) = &H1EAB:        tblRemoveDiacriticsChars(24) = "a"
    tblRemoveDiacriticsCodes(25) = &H1EAD:        tblRemoveDiacriticsChars(25) = "a"
    tblRemoveDiacriticsCodes(26) = &H1EAF:        tblRemoveDiacriticsChars(26) = "a"
    tblRemoveDiacriticsCodes(27) = &H1EB1:        tblRemoveDiacriticsChars(27) = "a"
    tblRemoveDiacriticsCodes(28) = &H1EB3:        tblRemoveDiacriticsChars(28) = "a"
    tblRemoveDiacriticsCodes(29) = &H1EB5:        tblRemoveDiacriticsChars(29) = "a"
    tblRemoveDiacriticsCodes(30) = &H1EB7:        tblRemoveDiacriticsChars(30) = "a"
    tblRemoveDiacriticsCodes(31) = &HC0:          tblRemoveDiacriticsChars(31) = "A"
    tblRemoveDiacriticsCodes(32) = &HC1:          tblRemoveDiacriticsChars(32) = "A"
    tblRemoveDiacriticsCodes(33) = &HC2:          tblRemoveDiacriticsChars(33) = "A"
    tblRemoveDiacriticsCodes(34) = &HC3:          tblRemoveDiacriticsChars(34) = "A"
    tblRemoveDiacriticsCodes(35) = &HC4:          tblRemoveDiacriticsChars(35) = "A"
    tblRemoveDiacriticsCodes(36) = &HC5:          tblRemoveDiacriticsChars(36) = "A"
    tblRemoveDiacriticsCodes(37) = &H100:         tblRemoveDiacriticsChars(37) = "A"
    tblRemoveDiacriticsCodes(38) = &H102:         tblRemoveDiacriticsChars(38) = "A"
    tblRemoveDiacriticsCodes(39) = &H104:         tblRemoveDiacriticsChars(39) = "A"
    tblRemoveDiacriticsCodes(40) = &H1CD:         tblRemoveDiacriticsChars(40) = "A"
    tblRemoveDiacriticsCodes(41) = &H1DE:         tblRemoveDiacriticsChars(41) = "A"
    tblRemoveDiacriticsCodes(42) = &H1E0:         tblRemoveDiacriticsChars(42) = "A"
    tblRemoveDiacriticsCodes(43) = &H1FA:         tblRemoveDiacriticsChars(43) = "A"
    tblRemoveDiacriticsCodes(44) = &H200:         tblRemoveDiacriticsChars(44) = "A"
    tblRemoveDiacriticsCodes(45) = &H202:         tblRemoveDiacriticsChars(45) = "A"
    tblRemoveDiacriticsCodes(46) = &H226:         tblRemoveDiacriticsChars(46) = "A"
    tblRemoveDiacriticsCodes(47) = &H23A:         tblRemoveDiacriticsChars(47) = "A"
    tblRemoveDiacriticsCodes(48) = &H1E00:        tblRemoveDiacriticsChars(48) = "A"
    tblRemoveDiacriticsCodes(49) = &H1EA0:        tblRemoveDiacriticsChars(49) = "A"
    tblRemoveDiacriticsCodes(50) = &H1EA2:        tblRemoveDiacriticsChars(50) = "A"
    tblRemoveDiacriticsCodes(51) = &H1EA4:        tblRemoveDiacriticsChars(51) = "A"
    tblRemoveDiacriticsCodes(52) = &H1EA6:        tblRemoveDiacriticsChars(52) = "A"
    tblRemoveDiacriticsCodes(53) = &H1EA8:        tblRemoveDiacriticsChars(53) = "A"
    tblRemoveDiacriticsCodes(54) = &H1EAA:        tblRemoveDiacriticsChars(54) = "A"
    tblRemoveDiacriticsCodes(55) = &H1EAC:        tblRemoveDiacriticsChars(55) = "A"
    tblRemoveDiacriticsCodes(56) = &H1EAE:        tblRemoveDiacriticsChars(56) = "A"
    tblRemoveDiacriticsCodes(57) = &H1EB0:        tblRemoveDiacriticsChars(57) = "A"
    tblRemoveDiacriticsCodes(58) = &H1EB2:        tblRemoveDiacriticsChars(58) = "A"
    tblRemoveDiacriticsCodes(59) = &H1EB4:        tblRemoveDiacriticsChars(59) = "A"
    tblRemoveDiacriticsCodes(60) = &H1EB6:        tblRemoveDiacriticsChars(60) = "A"
    tblRemoveDiacriticsCodes(61) = &H180:         tblRemoveDiacriticsChars(61) = "b"
    tblRemoveDiacriticsCodes(62) = &H183:         tblRemoveDiacriticsChars(62) = "b"
    tblRemoveDiacriticsCodes(63) = &H1E03:        tblRemoveDiacriticsChars(63) = "b"
    tblRemoveDiacriticsCodes(64) = &H1E05:        tblRemoveDiacriticsChars(64) = "b"
    tblRemoveDiacriticsCodes(65) = &H1E07:        tblRemoveDiacriticsChars(65) = "b"
    tblRemoveDiacriticsCodes(66) = &H181:         tblRemoveDiacriticsChars(66) = "B"
    tblRemoveDiacriticsCodes(67) = &H182:         tblRemoveDiacriticsChars(67) = "B"
    tblRemoveDiacriticsCodes(68) = &H243:         tblRemoveDiacriticsChars(68) = "B"
    tblRemoveDiacriticsCodes(69) = &H1E02:        tblRemoveDiacriticsChars(69) = "B"
    tblRemoveDiacriticsCodes(70) = &H1E04:        tblRemoveDiacriticsChars(70) = "B"
    tblRemoveDiacriticsCodes(71) = &H1E06:        tblRemoveDiacriticsChars(71) = "B"
    tblRemoveDiacriticsCodes(72) = &HE7:          tblRemoveDiacriticsChars(72) = "c"
    tblRemoveDiacriticsCodes(73) = &H107:         tblRemoveDiacriticsChars(73) = "c"
    tblRemoveDiacriticsCodes(74) = &H109:         tblRemoveDiacriticsChars(74) = "c"
    tblRemoveDiacriticsCodes(75) = &H10B:         tblRemoveDiacriticsChars(75) = "c"
    tblRemoveDiacriticsCodes(76) = &H10D:         tblRemoveDiacriticsChars(76) = "c"
    tblRemoveDiacriticsCodes(77) = &H188:         tblRemoveDiacriticsChars(77) = "c"
    tblRemoveDiacriticsCodes(78) = &H23C:         tblRemoveDiacriticsChars(78) = "c"
    tblRemoveDiacriticsCodes(79) = &H1E09:        tblRemoveDiacriticsChars(79) = "c"
    tblRemoveDiacriticsCodes(80) = &HC7:          tblRemoveDiacriticsChars(80) = "C"
    tblRemoveDiacriticsCodes(81) = &H106:         tblRemoveDiacriticsChars(81) = "C"
    tblRemoveDiacriticsCodes(82) = &H108:         tblRemoveDiacriticsChars(82) = "C"
    tblRemoveDiacriticsCodes(83) = &H10A:         tblRemoveDiacriticsChars(83) = "C"
    tblRemoveDiacriticsCodes(84) = &H10C:         tblRemoveDiacriticsChars(84) = "C"
    tblRemoveDiacriticsCodes(85) = &H187:         tblRemoveDiacriticsChars(85) = "C"
    tblRemoveDiacriticsCodes(86) = &H23B:         tblRemoveDiacriticsChars(86) = "C"
    tblRemoveDiacriticsCodes(87) = &H1E08:        tblRemoveDiacriticsChars(87) = "C"
    tblRemoveDiacriticsCodes(88) = &H10F:         tblRemoveDiacriticsChars(88) = "d"
    tblRemoveDiacriticsCodes(89) = &H111:         tblRemoveDiacriticsChars(89) = "d"
    tblRemoveDiacriticsCodes(90) = &H18C:         tblRemoveDiacriticsChars(90) = "d"
    tblRemoveDiacriticsCodes(91) = &H221:         tblRemoveDiacriticsChars(91) = "d"
    tblRemoveDiacriticsCodes(92) = &H1E0B:        tblRemoveDiacriticsChars(92) = "d"
    tblRemoveDiacriticsCodes(93) = &H1E0D:        tblRemoveDiacriticsChars(93) = "d"
    tblRemoveDiacriticsCodes(94) = &H1E0F:        tblRemoveDiacriticsChars(94) = "d"
    tblRemoveDiacriticsCodes(95) = &H1E11:        tblRemoveDiacriticsChars(95) = "d"
    tblRemoveDiacriticsCodes(96) = &H1E13:        tblRemoveDiacriticsChars(96) = "d"
    tblRemoveDiacriticsCodes(97) = &H10E:         tblRemoveDiacriticsChars(97) = "D"
    tblRemoveDiacriticsCodes(98) = &H110:         tblRemoveDiacriticsChars(98) = "D"
    tblRemoveDiacriticsCodes(99) = &H18A:         tblRemoveDiacriticsChars(99) = "D"
    tblRemoveDiacriticsCodes(100) = &H18B:         tblRemoveDiacriticsChars(100) = "D"
    tblRemoveDiacriticsCodes(101) = &H1C5:         tblRemoveDiacriticsChars(101) = "d"
    tblRemoveDiacriticsCodes(102) = &H1F2:         tblRemoveDiacriticsChars(102) = "d"
    tblRemoveDiacriticsCodes(103) = &H1E0A:        tblRemoveDiacriticsChars(103) = "D"
    tblRemoveDiacriticsCodes(104) = &H1E0C:        tblRemoveDiacriticsChars(104) = "D"
    tblRemoveDiacriticsCodes(105) = &H1E0E:        tblRemoveDiacriticsChars(105) = "D"
    tblRemoveDiacriticsCodes(106) = &H1E10:        tblRemoveDiacriticsChars(106) = "D"
    tblRemoveDiacriticsCodes(107) = &H1E12:        tblRemoveDiacriticsChars(107) = "D"
    tblRemoveDiacriticsCodes(108) = &HE8:          tblRemoveDiacriticsChars(108) = "e"
    tblRemoveDiacriticsCodes(109) = &HE9:          tblRemoveDiacriticsChars(109) = "e"
    tblRemoveDiacriticsCodes(110) = &HEA:          tblRemoveDiacriticsChars(110) = "e"
    tblRemoveDiacriticsCodes(111) = &HEB:          tblRemoveDiacriticsChars(111) = "e"
    tblRemoveDiacriticsCodes(112) = &H113:         tblRemoveDiacriticsChars(112) = "e"
    tblRemoveDiacriticsCodes(113) = &H115:         tblRemoveDiacriticsChars(113) = "e"
    tblRemoveDiacriticsCodes(114) = &H117:         tblRemoveDiacriticsChars(114) = "e"
    tblRemoveDiacriticsCodes(115) = &H119:         tblRemoveDiacriticsChars(115) = "e"
    tblRemoveDiacriticsCodes(116) = &H11B:         tblRemoveDiacriticsChars(116) = "e"
    tblRemoveDiacriticsCodes(117) = &H205:         tblRemoveDiacriticsChars(117) = "e"
    tblRemoveDiacriticsCodes(118) = &H207:         tblRemoveDiacriticsChars(118) = "e"
    tblRemoveDiacriticsCodes(119) = &H229:         tblRemoveDiacriticsChars(119) = "e"
    tblRemoveDiacriticsCodes(120) = &H247:         tblRemoveDiacriticsChars(120) = "e"
    tblRemoveDiacriticsCodes(121) = &H1E15:        tblRemoveDiacriticsChars(121) = "e"
    tblRemoveDiacriticsCodes(122) = &H1E17:        tblRemoveDiacriticsChars(122) = "e"
    tblRemoveDiacriticsCodes(123) = &H1E19:        tblRemoveDiacriticsChars(123) = "e"
    tblRemoveDiacriticsCodes(124) = &H1E1B:        tblRemoveDiacriticsChars(124) = "e"
    tblRemoveDiacriticsCodes(125) = &H1E1D:        tblRemoveDiacriticsChars(125) = "e"
    tblRemoveDiacriticsCodes(126) = &H1EB9:        tblRemoveDiacriticsChars(126) = "e"
    tblRemoveDiacriticsCodes(127) = &H1EBB:        tblRemoveDiacriticsChars(127) = "e"
    tblRemoveDiacriticsCodes(128) = &H1EBD:        tblRemoveDiacriticsChars(128) = "e"
    tblRemoveDiacriticsCodes(129) = &H1EBF:        tblRemoveDiacriticsChars(129) = "e"
    tblRemoveDiacriticsCodes(130) = &H1EC1:        tblRemoveDiacriticsChars(130) = "e"
    tblRemoveDiacriticsCodes(131) = &H1EC3:        tblRemoveDiacriticsChars(131) = "e"
    tblRemoveDiacriticsCodes(132) = &H1EC5:        tblRemoveDiacriticsChars(132) = "e"
    tblRemoveDiacriticsCodes(133) = &H1EC7:        tblRemoveDiacriticsChars(133) = "e"
    tblRemoveDiacriticsCodes(134) = &HC8:          tblRemoveDiacriticsChars(134) = "E"
    tblRemoveDiacriticsCodes(135) = &HC9:          tblRemoveDiacriticsChars(135) = "E"
    tblRemoveDiacriticsCodes(136) = &HCA:          tblRemoveDiacriticsChars(136) = "E"
    tblRemoveDiacriticsCodes(137) = &HCB:          tblRemoveDiacriticsChars(137) = "E"
    tblRemoveDiacriticsCodes(138) = &H112:         tblRemoveDiacriticsChars(138) = "E"
    tblRemoveDiacriticsCodes(139) = &H114:         tblRemoveDiacriticsChars(139) = "E"
    tblRemoveDiacriticsCodes(140) = &H116:         tblRemoveDiacriticsChars(140) = "E"
    tblRemoveDiacriticsCodes(141) = &H118:         tblRemoveDiacriticsChars(141) = "E"
    tblRemoveDiacriticsCodes(142) = &H11A:         tblRemoveDiacriticsChars(142) = "E"
    tblRemoveDiacriticsCodes(143) = &H204:         tblRemoveDiacriticsChars(143) = "E"
    tblRemoveDiacriticsCodes(144) = &H206:         tblRemoveDiacriticsChars(144) = "E"
    tblRemoveDiacriticsCodes(145) = &H228:         tblRemoveDiacriticsChars(145) = "E"
    tblRemoveDiacriticsCodes(146) = &H246:         tblRemoveDiacriticsChars(146) = "E"
    tblRemoveDiacriticsCodes(147) = &H1E14:        tblRemoveDiacriticsChars(147) = "E"
    tblRemoveDiacriticsCodes(148) = &H1E16:        tblRemoveDiacriticsChars(148) = "E"
    tblRemoveDiacriticsCodes(149) = &H1E18:        tblRemoveDiacriticsChars(149) = "E"
    tblRemoveDiacriticsCodes(150) = &H1E1A:        tblRemoveDiacriticsChars(150) = "E"
    tblRemoveDiacriticsCodes(151) = &H1E1C:        tblRemoveDiacriticsChars(151) = "E"
    tblRemoveDiacriticsCodes(152) = &H1EB8:        tblRemoveDiacriticsChars(152) = "E"
    tblRemoveDiacriticsCodes(153) = &H1EBA:        tblRemoveDiacriticsChars(153) = "E"
    tblRemoveDiacriticsCodes(154) = &H1EBC:        tblRemoveDiacriticsChars(154) = "E"
    tblRemoveDiacriticsCodes(155) = &H1EBE:        tblRemoveDiacriticsChars(155) = "E"
    tblRemoveDiacriticsCodes(156) = &H1EC0:        tblRemoveDiacriticsChars(156) = "E"
    tblRemoveDiacriticsCodes(157) = &H1EC2:        tblRemoveDiacriticsChars(157) = "E"
    tblRemoveDiacriticsCodes(158) = &H1EC4:        tblRemoveDiacriticsChars(158) = "E"
    tblRemoveDiacriticsCodes(159) = &H1EC6:        tblRemoveDiacriticsChars(159) = "E"
    tblRemoveDiacriticsCodes(160) = &H192:         tblRemoveDiacriticsChars(160) = "f"
    tblRemoveDiacriticsCodes(161) = &H1E1F:        tblRemoveDiacriticsChars(161) = "f"
    tblRemoveDiacriticsCodes(162) = &H191:         tblRemoveDiacriticsChars(162) = "F"
    tblRemoveDiacriticsCodes(163) = &H1E1E:        tblRemoveDiacriticsChars(163) = "F"
    tblRemoveDiacriticsCodes(164) = &H11D:         tblRemoveDiacriticsChars(164) = "g"
    tblRemoveDiacriticsCodes(165) = &H11F:         tblRemoveDiacriticsChars(165) = "g"
    tblRemoveDiacriticsCodes(166) = &H121:         tblRemoveDiacriticsChars(166) = "g"
    tblRemoveDiacriticsCodes(167) = &H123:         tblRemoveDiacriticsChars(167) = "g"
    tblRemoveDiacriticsCodes(168) = &H1E5:         tblRemoveDiacriticsChars(168) = "g"
    tblRemoveDiacriticsCodes(169) = &H1E7:         tblRemoveDiacriticsChars(169) = "g"
    tblRemoveDiacriticsCodes(170) = &H1F5:         tblRemoveDiacriticsChars(170) = "g"
    tblRemoveDiacriticsCodes(171) = &H1E21:        tblRemoveDiacriticsChars(171) = "g"
    tblRemoveDiacriticsCodes(172) = &H11C:         tblRemoveDiacriticsChars(172) = "G"
    tblRemoveDiacriticsCodes(173) = &H11E:         tblRemoveDiacriticsChars(173) = "G"
    tblRemoveDiacriticsCodes(174) = &H120:         tblRemoveDiacriticsChars(174) = "G"
    tblRemoveDiacriticsCodes(175) = &H122:         tblRemoveDiacriticsChars(175) = "G"
    tblRemoveDiacriticsCodes(176) = &H193:         tblRemoveDiacriticsChars(176) = "G"
    tblRemoveDiacriticsCodes(177) = &H1E4:         tblRemoveDiacriticsChars(177) = "G"
    tblRemoveDiacriticsCodes(178) = &H1E6:         tblRemoveDiacriticsChars(178) = "G"
    tblRemoveDiacriticsCodes(179) = &H1F4:         tblRemoveDiacriticsChars(179) = "G"
    tblRemoveDiacriticsCodes(180) = &H1E20:        tblRemoveDiacriticsChars(180) = "G"
    tblRemoveDiacriticsCodes(181) = &H125:         tblRemoveDiacriticsChars(181) = "h"
    tblRemoveDiacriticsCodes(182) = &H127:         tblRemoveDiacriticsChars(182) = "h"
    tblRemoveDiacriticsCodes(183) = &H21F:         tblRemoveDiacriticsChars(183) = "h"
    tblRemoveDiacriticsCodes(184) = &H1E23:        tblRemoveDiacriticsChars(184) = "h"
    tblRemoveDiacriticsCodes(185) = &H1E25:        tblRemoveDiacriticsChars(185) = "h"
    tblRemoveDiacriticsCodes(186) = &H1E27:        tblRemoveDiacriticsChars(186) = "h"
    tblRemoveDiacriticsCodes(187) = &H1E29:        tblRemoveDiacriticsChars(187) = "h"
    tblRemoveDiacriticsCodes(188) = &H1E2B:        tblRemoveDiacriticsChars(188) = "h"
    tblRemoveDiacriticsCodes(189) = &H1E96:        tblRemoveDiacriticsChars(189) = "h"
    tblRemoveDiacriticsCodes(190) = &H124:         tblRemoveDiacriticsChars(190) = "H"
    tblRemoveDiacriticsCodes(191) = &H126:         tblRemoveDiacriticsChars(191) = "H"
    tblRemoveDiacriticsCodes(192) = &H21E:         tblRemoveDiacriticsChars(192) = "H"
    tblRemoveDiacriticsCodes(193) = &H1E22:        tblRemoveDiacriticsChars(193) = "H"
    tblRemoveDiacriticsCodes(194) = &H1E24:        tblRemoveDiacriticsChars(194) = "H"
    tblRemoveDiacriticsCodes(195) = &H1E26:        tblRemoveDiacriticsChars(195) = "H"
    tblRemoveDiacriticsCodes(196) = &H1E28:        tblRemoveDiacriticsChars(196) = "H"
    tblRemoveDiacriticsCodes(197) = &H1E2A:        tblRemoveDiacriticsChars(197) = "H"
    tblRemoveDiacriticsCodes(198) = &HEC:          tblRemoveDiacriticsChars(198) = "i"
    tblRemoveDiacriticsCodes(199) = &HED:          tblRemoveDiacriticsChars(199) = "i"
    tblRemoveDiacriticsCodes(200) = &HEE:          tblRemoveDiacriticsChars(200) = "i"
    tblRemoveDiacriticsCodes(201) = &HEF:          tblRemoveDiacriticsChars(201) = "i"
    tblRemoveDiacriticsCodes(202) = &H129:         tblRemoveDiacriticsChars(202) = "i"
    tblRemoveDiacriticsCodes(203) = &H12B:         tblRemoveDiacriticsChars(203) = "i"
    tblRemoveDiacriticsCodes(204) = &H12D:         tblRemoveDiacriticsChars(204) = "i"
    tblRemoveDiacriticsCodes(205) = &H12F:         tblRemoveDiacriticsChars(205) = "i"
    tblRemoveDiacriticsCodes(206) = &H1D0:         tblRemoveDiacriticsChars(206) = "i"
    tblRemoveDiacriticsCodes(207) = &H209:         tblRemoveDiacriticsChars(207) = "i"
    tblRemoveDiacriticsCodes(208) = &H20B:         tblRemoveDiacriticsChars(208) = "i"
    tblRemoveDiacriticsCodes(209) = &H1E2D:        tblRemoveDiacriticsChars(209) = "i"
    tblRemoveDiacriticsCodes(210) = &H1E2F:        tblRemoveDiacriticsChars(210) = "i"
    tblRemoveDiacriticsCodes(211) = &H1EC9:        tblRemoveDiacriticsChars(211) = "i"
    tblRemoveDiacriticsCodes(212) = &H1ECB:        tblRemoveDiacriticsChars(212) = "i"
    tblRemoveDiacriticsCodes(213) = &HCC:          tblRemoveDiacriticsChars(213) = "I"
    tblRemoveDiacriticsCodes(214) = &HCD:          tblRemoveDiacriticsChars(214) = "I"
    tblRemoveDiacriticsCodes(215) = &HCE:          tblRemoveDiacriticsChars(215) = "I"
    tblRemoveDiacriticsCodes(216) = &HCF:          tblRemoveDiacriticsChars(216) = "I"
    tblRemoveDiacriticsCodes(217) = &H128:         tblRemoveDiacriticsChars(217) = "I"
    tblRemoveDiacriticsCodes(218) = &H12A:         tblRemoveDiacriticsChars(218) = "I"
    tblRemoveDiacriticsCodes(219) = &H12C:         tblRemoveDiacriticsChars(219) = "I"
    tblRemoveDiacriticsCodes(220) = &H12E:         tblRemoveDiacriticsChars(220) = "I"
    tblRemoveDiacriticsCodes(221) = &H130:         tblRemoveDiacriticsChars(221) = "I"
    tblRemoveDiacriticsCodes(222) = &H197:         tblRemoveDiacriticsChars(222) = "I"
    tblRemoveDiacriticsCodes(223) = &H1CF:         tblRemoveDiacriticsChars(223) = "I"
    tblRemoveDiacriticsCodes(224) = &H208:         tblRemoveDiacriticsChars(224) = "I"
    tblRemoveDiacriticsCodes(225) = &H20A:         tblRemoveDiacriticsChars(225) = "I"
    tblRemoveDiacriticsCodes(226) = &H1E2C:        tblRemoveDiacriticsChars(226) = "I"
    tblRemoveDiacriticsCodes(227) = &H1E2E:        tblRemoveDiacriticsChars(227) = "I"
    tblRemoveDiacriticsCodes(228) = &H1EC8:        tblRemoveDiacriticsChars(228) = "I"
    tblRemoveDiacriticsCodes(229) = &H1ECA:        tblRemoveDiacriticsChars(229) = "I"
    tblRemoveDiacriticsCodes(230) = &H135:         tblRemoveDiacriticsChars(230) = "j"
    tblRemoveDiacriticsCodes(231) = &H1F0:         tblRemoveDiacriticsChars(231) = "j"
    tblRemoveDiacriticsCodes(232) = &H249:         tblRemoveDiacriticsChars(232) = "j"
    tblRemoveDiacriticsCodes(233) = &H134:         tblRemoveDiacriticsChars(233) = "J"
    tblRemoveDiacriticsCodes(234) = &H248:         tblRemoveDiacriticsChars(234) = "J"
    tblRemoveDiacriticsCodes(235) = &H137:         tblRemoveDiacriticsChars(235) = "k"
    tblRemoveDiacriticsCodes(236) = &H199:         tblRemoveDiacriticsChars(236) = "k"
    tblRemoveDiacriticsCodes(237) = &H1E9:         tblRemoveDiacriticsChars(237) = "k"
    tblRemoveDiacriticsCodes(238) = &H1E31:        tblRemoveDiacriticsChars(238) = "k"
    tblRemoveDiacriticsCodes(239) = &H1E33:        tblRemoveDiacriticsChars(239) = "k"
    tblRemoveDiacriticsCodes(240) = &H1E35:        tblRemoveDiacriticsChars(240) = "k"
    tblRemoveDiacriticsCodes(241) = &H136:         tblRemoveDiacriticsChars(241) = "K"
    tblRemoveDiacriticsCodes(242) = &H198:         tblRemoveDiacriticsChars(242) = "K"
    tblRemoveDiacriticsCodes(243) = &H1E8:         tblRemoveDiacriticsChars(243) = "K"
    tblRemoveDiacriticsCodes(244) = &H1E30:        tblRemoveDiacriticsChars(244) = "K"
    tblRemoveDiacriticsCodes(245) = &H1E32:        tblRemoveDiacriticsChars(245) = "K"
    tblRemoveDiacriticsCodes(246) = &H1E34:        tblRemoveDiacriticsChars(246) = "K"
    tblRemoveDiacriticsCodes(247) = &H13A:         tblRemoveDiacriticsChars(247) = "l"
    tblRemoveDiacriticsCodes(248) = &H13C:         tblRemoveDiacriticsChars(248) = "l"
    tblRemoveDiacriticsCodes(249) = &H13E:         tblRemoveDiacriticsChars(249) = "l"
    tblRemoveDiacriticsCodes(250) = &H140:         tblRemoveDiacriticsChars(250) = "l"
    tblRemoveDiacriticsCodes(251) = &H142:         tblRemoveDiacriticsChars(251) = "l"
    tblRemoveDiacriticsCodes(252) = &H19A:         tblRemoveDiacriticsChars(252) = "l"
    tblRemoveDiacriticsCodes(253) = &H234:         tblRemoveDiacriticsChars(253) = "l"
    tblRemoveDiacriticsCodes(254) = &H1E37:        tblRemoveDiacriticsChars(254) = "l"
    tblRemoveDiacriticsCodes(255) = &H1E39:        tblRemoveDiacriticsChars(255) = "l"
    tblRemoveDiacriticsCodes(256) = &H1E3B:        tblRemoveDiacriticsChars(256) = "l"
    tblRemoveDiacriticsCodes(257) = &H1E3D:        tblRemoveDiacriticsChars(257) = "l"
    tblRemoveDiacriticsCodes(258) = &H139:         tblRemoveDiacriticsChars(258) = "L"
    tblRemoveDiacriticsCodes(259) = &H13B:         tblRemoveDiacriticsChars(259) = "L"
    tblRemoveDiacriticsCodes(260) = &H13D:         tblRemoveDiacriticsChars(260) = "L"
    tblRemoveDiacriticsCodes(261) = &H13F:         tblRemoveDiacriticsChars(261) = "L"
    tblRemoveDiacriticsCodes(262) = &H141:         tblRemoveDiacriticsChars(262) = "L"
    tblRemoveDiacriticsCodes(263) = &H1C8:         tblRemoveDiacriticsChars(263) = "l"
    tblRemoveDiacriticsCodes(264) = &H23D:         tblRemoveDiacriticsChars(264) = "L"
    tblRemoveDiacriticsCodes(265) = &H1E36:        tblRemoveDiacriticsChars(265) = "L"
    tblRemoveDiacriticsCodes(266) = &H1E38:        tblRemoveDiacriticsChars(266) = "L"
    tblRemoveDiacriticsCodes(267) = &H1E3A:        tblRemoveDiacriticsChars(267) = "L"
    tblRemoveDiacriticsCodes(268) = &H1E3C:        tblRemoveDiacriticsChars(268) = "L"
    tblRemoveDiacriticsCodes(269) = &H1E3F:        tblRemoveDiacriticsChars(269) = "m"
    tblRemoveDiacriticsCodes(270) = &H1E41:        tblRemoveDiacriticsChars(270) = "m"
    tblRemoveDiacriticsCodes(271) = &H1E43:        tblRemoveDiacriticsChars(271) = "m"
    tblRemoveDiacriticsCodes(272) = &H1E3E:        tblRemoveDiacriticsChars(272) = "M"
    tblRemoveDiacriticsCodes(273) = &H1E40:        tblRemoveDiacriticsChars(273) = "M"
    tblRemoveDiacriticsCodes(274) = &H1E42:        tblRemoveDiacriticsChars(274) = "M"
    tblRemoveDiacriticsCodes(275) = &HF1:          tblRemoveDiacriticsChars(275) = "n"
    tblRemoveDiacriticsCodes(276) = &H144:         tblRemoveDiacriticsChars(276) = "n"
    tblRemoveDiacriticsCodes(277) = &H146:         tblRemoveDiacriticsChars(277) = "n"
    tblRemoveDiacriticsCodes(278) = &H148:         tblRemoveDiacriticsChars(278) = "n"
    tblRemoveDiacriticsCodes(279) = &H149:         tblRemoveDiacriticsChars(279) = "n"
    tblRemoveDiacriticsCodes(280) = &H19E:         tblRemoveDiacriticsChars(280) = "n"
    tblRemoveDiacriticsCodes(281) = &H1F9:         tblRemoveDiacriticsChars(281) = "n"
    tblRemoveDiacriticsCodes(282) = &H235:         tblRemoveDiacriticsChars(282) = "n"
    tblRemoveDiacriticsCodes(283) = &H1E45:        tblRemoveDiacriticsChars(283) = "n"
    tblRemoveDiacriticsCodes(284) = &H1E47:        tblRemoveDiacriticsChars(284) = "n"
    tblRemoveDiacriticsCodes(285) = &H1E49:        tblRemoveDiacriticsChars(285) = "n"
    tblRemoveDiacriticsCodes(286) = &H1E4B:        tblRemoveDiacriticsChars(286) = "n"
    tblRemoveDiacriticsCodes(287) = &HD1:          tblRemoveDiacriticsChars(287) = "N"
    tblRemoveDiacriticsCodes(288) = &H143:         tblRemoveDiacriticsChars(288) = "N"
    tblRemoveDiacriticsCodes(289) = &H145:         tblRemoveDiacriticsChars(289) = "N"
    tblRemoveDiacriticsCodes(290) = &H147:         tblRemoveDiacriticsChars(290) = "N"
    tblRemoveDiacriticsCodes(291) = &H19D:         tblRemoveDiacriticsChars(291) = "N"
    tblRemoveDiacriticsCodes(292) = &H1F8:         tblRemoveDiacriticsChars(292) = "N"
    tblRemoveDiacriticsCodes(293) = &H220:         tblRemoveDiacriticsChars(293) = "N"
    tblRemoveDiacriticsCodes(294) = &H1E44:        tblRemoveDiacriticsChars(294) = "N"
    tblRemoveDiacriticsCodes(295) = &H1E46:        tblRemoveDiacriticsChars(295) = "N"
    tblRemoveDiacriticsCodes(296) = &H1E48:        tblRemoveDiacriticsChars(296) = "N"
    tblRemoveDiacriticsCodes(297) = &H1E4A:        tblRemoveDiacriticsChars(297) = "N"
    tblRemoveDiacriticsCodes(298) = &HF2:          tblRemoveDiacriticsChars(298) = "o"
    tblRemoveDiacriticsCodes(299) = &HF3:          tblRemoveDiacriticsChars(299) = "o"
    tblRemoveDiacriticsCodes(300) = &HF4:          tblRemoveDiacriticsChars(300) = "o"
    tblRemoveDiacriticsCodes(301) = &HF5:          tblRemoveDiacriticsChars(301) = "o"
    tblRemoveDiacriticsCodes(302) = &HF6:          tblRemoveDiacriticsChars(302) = "o"
    tblRemoveDiacriticsCodes(303) = &HF8:          tblRemoveDiacriticsChars(303) = "o"
    tblRemoveDiacriticsCodes(304) = &H14D:         tblRemoveDiacriticsChars(304) = "o"
    tblRemoveDiacriticsCodes(305) = &H14F:         tblRemoveDiacriticsChars(305) = "o"
    tblRemoveDiacriticsCodes(306) = &H151:         tblRemoveDiacriticsChars(306) = "o"
    tblRemoveDiacriticsCodes(307) = &H1A1:         tblRemoveDiacriticsChars(307) = "o"
    tblRemoveDiacriticsCodes(308) = &H1D2:         tblRemoveDiacriticsChars(308) = "o"
    tblRemoveDiacriticsCodes(309) = &H1EB:         tblRemoveDiacriticsChars(309) = "o"
    tblRemoveDiacriticsCodes(310) = &H1ED:         tblRemoveDiacriticsChars(310) = "o"
    tblRemoveDiacriticsCodes(311) = &H1FF:         tblRemoveDiacriticsChars(311) = "o"
    tblRemoveDiacriticsCodes(312) = &H20D:         tblRemoveDiacriticsChars(312) = "o"
    tblRemoveDiacriticsCodes(313) = &H20F:         tblRemoveDiacriticsChars(313) = "o"
    tblRemoveDiacriticsCodes(314) = &H22B:         tblRemoveDiacriticsChars(314) = "o"
    tblRemoveDiacriticsCodes(315) = &H22D:         tblRemoveDiacriticsChars(315) = "o"
    tblRemoveDiacriticsCodes(316) = &H22F:         tblRemoveDiacriticsChars(316) = "o"
    tblRemoveDiacriticsCodes(317) = &H231:         tblRemoveDiacriticsChars(317) = "o"
    tblRemoveDiacriticsCodes(318) = &H1E4D:        tblRemoveDiacriticsChars(318) = "o"
    tblRemoveDiacriticsCodes(319) = &H1E4F:        tblRemoveDiacriticsChars(319) = "o"
    tblRemoveDiacriticsCodes(320) = &H1E51:        tblRemoveDiacriticsChars(320) = "o"
    tblRemoveDiacriticsCodes(321) = &H1E53:        tblRemoveDiacriticsChars(321) = "o"
    tblRemoveDiacriticsCodes(322) = &H1ECD:        tblRemoveDiacriticsChars(322) = "o"
    tblRemoveDiacriticsCodes(323) = &H1ECF:        tblRemoveDiacriticsChars(323) = "o"
    tblRemoveDiacriticsCodes(324) = &H1ED1:        tblRemoveDiacriticsChars(324) = "o"
    tblRemoveDiacriticsCodes(325) = &H1ED3:        tblRemoveDiacriticsChars(325) = "o"
    tblRemoveDiacriticsCodes(326) = &H1ED5:        tblRemoveDiacriticsChars(326) = "o"
    tblRemoveDiacriticsCodes(327) = &H1ED7:        tblRemoveDiacriticsChars(327) = "o"
    tblRemoveDiacriticsCodes(328) = &H1ED9:        tblRemoveDiacriticsChars(328) = "o"
    tblRemoveDiacriticsCodes(329) = &H1EDB:        tblRemoveDiacriticsChars(329) = "o"
    tblRemoveDiacriticsCodes(330) = &H1EDD:        tblRemoveDiacriticsChars(330) = "o"
    tblRemoveDiacriticsCodes(331) = &H1EDF:        tblRemoveDiacriticsChars(331) = "o"
    tblRemoveDiacriticsCodes(332) = &H1EE1:        tblRemoveDiacriticsChars(332) = "o"
    tblRemoveDiacriticsCodes(333) = &H1EE3:        tblRemoveDiacriticsChars(333) = "o"
    tblRemoveDiacriticsCodes(334) = &HD2:          tblRemoveDiacriticsChars(334) = "O"
    tblRemoveDiacriticsCodes(335) = &HD3:          tblRemoveDiacriticsChars(335) = "O"
    tblRemoveDiacriticsCodes(336) = &HD4:          tblRemoveDiacriticsChars(336) = "O"
    tblRemoveDiacriticsCodes(337) = &HD5:          tblRemoveDiacriticsChars(337) = "O"
    tblRemoveDiacriticsCodes(338) = &HD6:          tblRemoveDiacriticsChars(338) = "O"
    tblRemoveDiacriticsCodes(339) = &HD8:          tblRemoveDiacriticsChars(339) = "O"
    tblRemoveDiacriticsCodes(340) = &H14C:         tblRemoveDiacriticsChars(340) = "O"
    tblRemoveDiacriticsCodes(341) = &H14E:         tblRemoveDiacriticsChars(341) = "O"
    tblRemoveDiacriticsCodes(342) = &H150:         tblRemoveDiacriticsChars(342) = "O"
    tblRemoveDiacriticsCodes(343) = &H19F:         tblRemoveDiacriticsChars(343) = "O"
    tblRemoveDiacriticsCodes(344) = &H1A0:         tblRemoveDiacriticsChars(344) = "O"
    tblRemoveDiacriticsCodes(345) = &H1D1:         tblRemoveDiacriticsChars(345) = "O"
    tblRemoveDiacriticsCodes(346) = &H1EA:         tblRemoveDiacriticsChars(346) = "O"
    tblRemoveDiacriticsCodes(347) = &H1EC:         tblRemoveDiacriticsChars(347) = "O"
    tblRemoveDiacriticsCodes(348) = &H1FE:         tblRemoveDiacriticsChars(348) = "O"
    tblRemoveDiacriticsCodes(349) = &H20C:         tblRemoveDiacriticsChars(349) = "O"
    tblRemoveDiacriticsCodes(350) = &H20E:         tblRemoveDiacriticsChars(350) = "O"
    tblRemoveDiacriticsCodes(351) = &H22A:         tblRemoveDiacriticsChars(351) = "O"
    tblRemoveDiacriticsCodes(352) = &H22C:         tblRemoveDiacriticsChars(352) = "O"
    tblRemoveDiacriticsCodes(353) = &H22E:         tblRemoveDiacriticsChars(353) = "O"
    tblRemoveDiacriticsCodes(354) = &H230:         tblRemoveDiacriticsChars(354) = "O"
    tblRemoveDiacriticsCodes(355) = &H1E4C:        tblRemoveDiacriticsChars(355) = "O"
    tblRemoveDiacriticsCodes(356) = &H1E4E:        tblRemoveDiacriticsChars(356) = "O"
    tblRemoveDiacriticsCodes(357) = &H1E50:        tblRemoveDiacriticsChars(357) = "O"
    tblRemoveDiacriticsCodes(358) = &H1E52:        tblRemoveDiacriticsChars(358) = "O"
    tblRemoveDiacriticsCodes(359) = &H1ECC:        tblRemoveDiacriticsChars(359) = "O"
    tblRemoveDiacriticsCodes(360) = &H1ECE:        tblRemoveDiacriticsChars(360) = "O"
    tblRemoveDiacriticsCodes(361) = &H1ED0:        tblRemoveDiacriticsChars(361) = "O"
    tblRemoveDiacriticsCodes(362) = &H1ED2:        tblRemoveDiacriticsChars(362) = "O"
    tblRemoveDiacriticsCodes(363) = &H1ED4:        tblRemoveDiacriticsChars(363) = "O"
    tblRemoveDiacriticsCodes(364) = &H1ED6:        tblRemoveDiacriticsChars(364) = "O"
    tblRemoveDiacriticsCodes(365) = &H1ED8:        tblRemoveDiacriticsChars(365) = "O"
    tblRemoveDiacriticsCodes(366) = &H1EDA:        tblRemoveDiacriticsChars(366) = "O"
    tblRemoveDiacriticsCodes(367) = &H1EDC:        tblRemoveDiacriticsChars(367) = "O"
    tblRemoveDiacriticsCodes(368) = &H1EDE:        tblRemoveDiacriticsChars(368) = "O"
    tblRemoveDiacriticsCodes(369) = &H1EE0:        tblRemoveDiacriticsChars(369) = "O"
    tblRemoveDiacriticsCodes(370) = &H1EE2:        tblRemoveDiacriticsChars(370) = "O"
    tblRemoveDiacriticsCodes(371) = &H1A5:         tblRemoveDiacriticsChars(371) = "p"
    tblRemoveDiacriticsCodes(372) = &H1E55:        tblRemoveDiacriticsChars(372) = "p"
    tblRemoveDiacriticsCodes(373) = &H1E57:        tblRemoveDiacriticsChars(373) = "p"
    tblRemoveDiacriticsCodes(374) = &H1A4:         tblRemoveDiacriticsChars(374) = "P"
    tblRemoveDiacriticsCodes(375) = &H1E54:        tblRemoveDiacriticsChars(375) = "P"
    tblRemoveDiacriticsCodes(376) = &H1E56:        tblRemoveDiacriticsChars(376) = "P"
    tblRemoveDiacriticsCodes(377) = &H24B:         tblRemoveDiacriticsChars(377) = "q"
    tblRemoveDiacriticsCodes(378) = &H24A:         tblRemoveDiacriticsChars(378) = "Q"
    tblRemoveDiacriticsCodes(379) = &H155:         tblRemoveDiacriticsChars(379) = "r"
    tblRemoveDiacriticsCodes(380) = &H157:         tblRemoveDiacriticsChars(380) = "r"
    tblRemoveDiacriticsCodes(381) = &H159:         tblRemoveDiacriticsChars(381) = "r"
    tblRemoveDiacriticsCodes(382) = &H211:         tblRemoveDiacriticsChars(382) = "r"
    tblRemoveDiacriticsCodes(383) = &H213:         tblRemoveDiacriticsChars(383) = "r"
    tblRemoveDiacriticsCodes(384) = &H24D:         tblRemoveDiacriticsChars(384) = "r"
    tblRemoveDiacriticsCodes(385) = &H1E59:        tblRemoveDiacriticsChars(385) = "r"
    tblRemoveDiacriticsCodes(386) = &H1E5B:        tblRemoveDiacriticsChars(386) = "r"
    tblRemoveDiacriticsCodes(387) = &H1E5D:        tblRemoveDiacriticsChars(387) = "r"
    tblRemoveDiacriticsCodes(388) = &H1E5F:        tblRemoveDiacriticsChars(388) = "r"
    tblRemoveDiacriticsCodes(389) = &H154:         tblRemoveDiacriticsChars(389) = "R"
    tblRemoveDiacriticsCodes(390) = &H156:         tblRemoveDiacriticsChars(390) = "R"
    tblRemoveDiacriticsCodes(391) = &H158:         tblRemoveDiacriticsChars(391) = "R"
    tblRemoveDiacriticsCodes(392) = &H210:         tblRemoveDiacriticsChars(392) = "R"
    tblRemoveDiacriticsCodes(393) = &H212:         tblRemoveDiacriticsChars(393) = "R"
    tblRemoveDiacriticsCodes(394) = &H24C:         tblRemoveDiacriticsChars(394) = "R"
    tblRemoveDiacriticsCodes(395) = &H1E58:        tblRemoveDiacriticsChars(395) = "R"
    tblRemoveDiacriticsCodes(396) = &H1E5A:        tblRemoveDiacriticsChars(396) = "R"
    tblRemoveDiacriticsCodes(397) = &H1E5C:        tblRemoveDiacriticsChars(397) = "R"
    tblRemoveDiacriticsCodes(398) = &H1E5E:        tblRemoveDiacriticsChars(398) = "R"
    tblRemoveDiacriticsCodes(399) = &H15B:         tblRemoveDiacriticsChars(399) = "s"
    tblRemoveDiacriticsCodes(400) = &H15D:         tblRemoveDiacriticsChars(400) = "s"
    tblRemoveDiacriticsCodes(401) = &H15F:         tblRemoveDiacriticsChars(401) = "s"
    tblRemoveDiacriticsCodes(402) = &H161:         tblRemoveDiacriticsChars(402) = "s"
    tblRemoveDiacriticsCodes(403) = &H219:         tblRemoveDiacriticsChars(403) = "s"
    tblRemoveDiacriticsCodes(404) = &H23F:         tblRemoveDiacriticsChars(404) = "s"
    tblRemoveDiacriticsCodes(405) = &H1E61:        tblRemoveDiacriticsChars(405) = "s"
    tblRemoveDiacriticsCodes(406) = &H1E63:        tblRemoveDiacriticsChars(406) = "s"
    tblRemoveDiacriticsCodes(407) = &H1E65:        tblRemoveDiacriticsChars(407) = "s"
    tblRemoveDiacriticsCodes(408) = &H1E67:        tblRemoveDiacriticsChars(408) = "s"
    tblRemoveDiacriticsCodes(409) = &H1E69:        tblRemoveDiacriticsChars(409) = "s"
    tblRemoveDiacriticsCodes(410) = &H15A:         tblRemoveDiacriticsChars(410) = "S"
    tblRemoveDiacriticsCodes(411) = &H15C:         tblRemoveDiacriticsChars(411) = "S"
    tblRemoveDiacriticsCodes(412) = &H15E:         tblRemoveDiacriticsChars(412) = "S"
    tblRemoveDiacriticsCodes(413) = &H160:         tblRemoveDiacriticsChars(413) = "S"
    tblRemoveDiacriticsCodes(414) = &H218:         tblRemoveDiacriticsChars(414) = "S"
    tblRemoveDiacriticsCodes(415) = &H1E60:        tblRemoveDiacriticsChars(415) = "S"
    tblRemoveDiacriticsCodes(416) = &H1E62:        tblRemoveDiacriticsChars(416) = "S"
    tblRemoveDiacriticsCodes(417) = &H1E64:        tblRemoveDiacriticsChars(417) = "S"
    tblRemoveDiacriticsCodes(418) = &H1E66:        tblRemoveDiacriticsChars(418) = "S"
    tblRemoveDiacriticsCodes(419) = &H1E68:        tblRemoveDiacriticsChars(419) = "S"
    tblRemoveDiacriticsCodes(420) = &H163:         tblRemoveDiacriticsChars(420) = "t"
    tblRemoveDiacriticsCodes(421) = &H165:         tblRemoveDiacriticsChars(421) = "t"
    tblRemoveDiacriticsCodes(422) = &H167:         tblRemoveDiacriticsChars(422) = "t"
    tblRemoveDiacriticsCodes(423) = &H1AB:         tblRemoveDiacriticsChars(423) = "t"
    tblRemoveDiacriticsCodes(424) = &H1AD:         tblRemoveDiacriticsChars(424) = "t"
    tblRemoveDiacriticsCodes(425) = &H21B:         tblRemoveDiacriticsChars(425) = "t"
    tblRemoveDiacriticsCodes(426) = &H236:         tblRemoveDiacriticsChars(426) = "t"
    tblRemoveDiacriticsCodes(427) = &H1E6B:        tblRemoveDiacriticsChars(427) = "t"
    tblRemoveDiacriticsCodes(428) = &H1E6D:        tblRemoveDiacriticsChars(428) = "t"
    tblRemoveDiacriticsCodes(429) = &H1E6F:        tblRemoveDiacriticsChars(429) = "t"
    tblRemoveDiacriticsCodes(430) = &H1E71:        tblRemoveDiacriticsChars(430) = "t"
    tblRemoveDiacriticsCodes(431) = &H1E97:        tblRemoveDiacriticsChars(431) = "t"
    tblRemoveDiacriticsCodes(432) = &H162:         tblRemoveDiacriticsChars(432) = "T"
    tblRemoveDiacriticsCodes(433) = &H164:         tblRemoveDiacriticsChars(433) = "T"
    tblRemoveDiacriticsCodes(434) = &H166:         tblRemoveDiacriticsChars(434) = "T"
    tblRemoveDiacriticsCodes(435) = &H1AC:         tblRemoveDiacriticsChars(435) = "T"
    tblRemoveDiacriticsCodes(436) = &H1AE:         tblRemoveDiacriticsChars(436) = "T"
    tblRemoveDiacriticsCodes(437) = &H21A:         tblRemoveDiacriticsChars(437) = "T"
    tblRemoveDiacriticsCodes(438) = &H23E:         tblRemoveDiacriticsChars(438) = "T"
    tblRemoveDiacriticsCodes(439) = &H1E6A:        tblRemoveDiacriticsChars(439) = "T"
    tblRemoveDiacriticsCodes(440) = &H1E6C:        tblRemoveDiacriticsChars(440) = "T"
    tblRemoveDiacriticsCodes(441) = &H1E6E:        tblRemoveDiacriticsChars(441) = "T"
    tblRemoveDiacriticsCodes(442) = &H1E70:        tblRemoveDiacriticsChars(442) = "T"
    tblRemoveDiacriticsCodes(443) = &HF9:          tblRemoveDiacriticsChars(443) = "u"
    tblRemoveDiacriticsCodes(444) = &HFA:          tblRemoveDiacriticsChars(444) = "u"
    tblRemoveDiacriticsCodes(445) = &HFB:          tblRemoveDiacriticsChars(445) = "u"
    tblRemoveDiacriticsCodes(446) = &HFC:          tblRemoveDiacriticsChars(446) = "u"
    tblRemoveDiacriticsCodes(447) = &H169:         tblRemoveDiacriticsChars(447) = "u"
    tblRemoveDiacriticsCodes(448) = &H16B:         tblRemoveDiacriticsChars(448) = "u"
    tblRemoveDiacriticsCodes(449) = &H16D:         tblRemoveDiacriticsChars(449) = "u"
    tblRemoveDiacriticsCodes(450) = &H16F:         tblRemoveDiacriticsChars(450) = "u"
    tblRemoveDiacriticsCodes(451) = &H171:         tblRemoveDiacriticsChars(451) = "u"
    tblRemoveDiacriticsCodes(452) = &H173:         tblRemoveDiacriticsChars(452) = "u"
    tblRemoveDiacriticsCodes(453) = &H1B0:         tblRemoveDiacriticsChars(453) = "u"
    tblRemoveDiacriticsCodes(454) = &H1D4:         tblRemoveDiacriticsChars(454) = "u"
    tblRemoveDiacriticsCodes(455) = &H1D6:         tblRemoveDiacriticsChars(455) = "u"
    tblRemoveDiacriticsCodes(456) = &H1D8:         tblRemoveDiacriticsChars(456) = "u"
    tblRemoveDiacriticsCodes(457) = &H1DA:         tblRemoveDiacriticsChars(457) = "u"
    tblRemoveDiacriticsCodes(458) = &H1DC:         tblRemoveDiacriticsChars(458) = "u"
    tblRemoveDiacriticsCodes(459) = &H215:         tblRemoveDiacriticsChars(459) = "u"
    tblRemoveDiacriticsCodes(460) = &H217:         tblRemoveDiacriticsChars(460) = "u"
    tblRemoveDiacriticsCodes(461) = &H1E73:        tblRemoveDiacriticsChars(461) = "u"
    tblRemoveDiacriticsCodes(462) = &H1E75:        tblRemoveDiacriticsChars(462) = "u"
    tblRemoveDiacriticsCodes(463) = &H1E77:        tblRemoveDiacriticsChars(463) = "u"
    tblRemoveDiacriticsCodes(464) = &H1E79:        tblRemoveDiacriticsChars(464) = "u"
    tblRemoveDiacriticsCodes(465) = &H1E7B:        tblRemoveDiacriticsChars(465) = "u"
    tblRemoveDiacriticsCodes(466) = &H1EE5:        tblRemoveDiacriticsChars(466) = "u"
    tblRemoveDiacriticsCodes(467) = &H1EE7:        tblRemoveDiacriticsChars(467) = "u"
    tblRemoveDiacriticsCodes(468) = &H1EE9:        tblRemoveDiacriticsChars(468) = "u"
    tblRemoveDiacriticsCodes(469) = &H1EEB:        tblRemoveDiacriticsChars(469) = "u"
    tblRemoveDiacriticsCodes(470) = &H1EED:        tblRemoveDiacriticsChars(470) = "u"
    tblRemoveDiacriticsCodes(471) = &H1EEF:        tblRemoveDiacriticsChars(471) = "u"
    tblRemoveDiacriticsCodes(472) = &H1EF1:        tblRemoveDiacriticsChars(472) = "u"
    tblRemoveDiacriticsCodes(473) = &HD9:          tblRemoveDiacriticsChars(473) = "U"
    tblRemoveDiacriticsCodes(474) = &HDA:          tblRemoveDiacriticsChars(474) = "U"
    tblRemoveDiacriticsCodes(475) = &HDB:          tblRemoveDiacriticsChars(475) = "U"
    tblRemoveDiacriticsCodes(476) = &HDC:          tblRemoveDiacriticsChars(476) = "U"
    tblRemoveDiacriticsCodes(477) = &H168:         tblRemoveDiacriticsChars(477) = "U"
    tblRemoveDiacriticsCodes(478) = &H16A:         tblRemoveDiacriticsChars(478) = "U"
    tblRemoveDiacriticsCodes(479) = &H16C:         tblRemoveDiacriticsChars(479) = "U"
    tblRemoveDiacriticsCodes(480) = &H16E:         tblRemoveDiacriticsChars(480) = "U"
    tblRemoveDiacriticsCodes(481) = &H170:         tblRemoveDiacriticsChars(481) = "U"
    tblRemoveDiacriticsCodes(482) = &H172:         tblRemoveDiacriticsChars(482) = "U"
    tblRemoveDiacriticsCodes(483) = &H1AF:         tblRemoveDiacriticsChars(483) = "U"
    tblRemoveDiacriticsCodes(484) = &H1D3:         tblRemoveDiacriticsChars(484) = "U"
    tblRemoveDiacriticsCodes(485) = &H1D5:         tblRemoveDiacriticsChars(485) = "U"
    tblRemoveDiacriticsCodes(486) = &H1D7:         tblRemoveDiacriticsChars(486) = "U"
    tblRemoveDiacriticsCodes(487) = &H1D9:         tblRemoveDiacriticsChars(487) = "U"
    tblRemoveDiacriticsCodes(488) = &H1DB:         tblRemoveDiacriticsChars(488) = "U"
    tblRemoveDiacriticsCodes(489) = &H214:         tblRemoveDiacriticsChars(489) = "U"
    tblRemoveDiacriticsCodes(490) = &H216:         tblRemoveDiacriticsChars(490) = "U"
    tblRemoveDiacriticsCodes(491) = &H244:         tblRemoveDiacriticsChars(491) = "U"
    tblRemoveDiacriticsCodes(492) = &H1E72:        tblRemoveDiacriticsChars(492) = "U"
    tblRemoveDiacriticsCodes(493) = &H1E74:        tblRemoveDiacriticsChars(493) = "U"
    tblRemoveDiacriticsCodes(494) = &H1E76:        tblRemoveDiacriticsChars(494) = "U"
    tblRemoveDiacriticsCodes(495) = &H1E78:        tblRemoveDiacriticsChars(495) = "U"
    tblRemoveDiacriticsCodes(496) = &H1E7A:        tblRemoveDiacriticsChars(496) = "U"
    tblRemoveDiacriticsCodes(497) = &H1EE4:        tblRemoveDiacriticsChars(497) = "U"
    tblRemoveDiacriticsCodes(498) = &H1EE6:        tblRemoveDiacriticsChars(498) = "U"
    tblRemoveDiacriticsCodes(499) = &H1EE8:        tblRemoveDiacriticsChars(499) = "U"
    tblRemoveDiacriticsCodes(500) = &H1EEA:        tblRemoveDiacriticsChars(500) = "U"
    tblRemoveDiacriticsCodes(501) = &H1EEC:        tblRemoveDiacriticsChars(501) = "U"
    tblRemoveDiacriticsCodes(502) = &H1EEE:        tblRemoveDiacriticsChars(502) = "U"
    tblRemoveDiacriticsCodes(503) = &H1EF0:        tblRemoveDiacriticsChars(503) = "U"
    tblRemoveDiacriticsCodes(504) = &H1E7D:        tblRemoveDiacriticsChars(504) = "v"
    tblRemoveDiacriticsCodes(505) = &H1E7F:        tblRemoveDiacriticsChars(505) = "v"
    tblRemoveDiacriticsCodes(506) = &H1B2:         tblRemoveDiacriticsChars(506) = "V"
    tblRemoveDiacriticsCodes(507) = &H1E7C:        tblRemoveDiacriticsChars(507) = "V"
    tblRemoveDiacriticsCodes(508) = &H1E7E:        tblRemoveDiacriticsChars(508) = "V"
    tblRemoveDiacriticsCodes(509) = &H175:         tblRemoveDiacriticsChars(509) = "w"
    tblRemoveDiacriticsCodes(510) = &H1E81:        tblRemoveDiacriticsChars(510) = "w"
    tblRemoveDiacriticsCodes(511) = &H1E83:        tblRemoveDiacriticsChars(511) = "w"
    tblRemoveDiacriticsCodes(512) = &H1E85:        tblRemoveDiacriticsChars(512) = "w"
    tblRemoveDiacriticsCodes(513) = &H1E87:        tblRemoveDiacriticsChars(513) = "w"
    tblRemoveDiacriticsCodes(514) = &H1E89:        tblRemoveDiacriticsChars(514) = "w"
    tblRemoveDiacriticsCodes(515) = &H1E98:        tblRemoveDiacriticsChars(515) = "w"
    tblRemoveDiacriticsCodes(516) = &H174:         tblRemoveDiacriticsChars(516) = "W"
    tblRemoveDiacriticsCodes(517) = &H1E80:        tblRemoveDiacriticsChars(517) = "W"
    tblRemoveDiacriticsCodes(518) = &H1E82:        tblRemoveDiacriticsChars(518) = "W"
    tblRemoveDiacriticsCodes(519) = &H1E84:        tblRemoveDiacriticsChars(519) = "W"
    tblRemoveDiacriticsCodes(520) = &H1E86:        tblRemoveDiacriticsChars(520) = "W"
    tblRemoveDiacriticsCodes(521) = &H1E88:        tblRemoveDiacriticsChars(521) = "W"
    tblRemoveDiacriticsCodes(522) = &H1E8B:        tblRemoveDiacriticsChars(522) = "x"
    tblRemoveDiacriticsCodes(523) = &H1E8D:        tblRemoveDiacriticsChars(523) = "x"
    tblRemoveDiacriticsCodes(524) = &H1E8A:        tblRemoveDiacriticsChars(524) = "X"
    tblRemoveDiacriticsCodes(525) = &H1E8C:        tblRemoveDiacriticsChars(525) = "X"
    tblRemoveDiacriticsCodes(526) = &HFD:          tblRemoveDiacriticsChars(526) = "y"
    tblRemoveDiacriticsCodes(527) = &HFF:          tblRemoveDiacriticsChars(527) = "y"
    tblRemoveDiacriticsCodes(528) = &H177:         tblRemoveDiacriticsChars(528) = "y"
    tblRemoveDiacriticsCodes(529) = &H1B4:         tblRemoveDiacriticsChars(529) = "y"
    tblRemoveDiacriticsCodes(530) = &H233:         tblRemoveDiacriticsChars(530) = "y"
    tblRemoveDiacriticsCodes(531) = &H24F:         tblRemoveDiacriticsChars(531) = "y"
    tblRemoveDiacriticsCodes(532) = &H1E8F:        tblRemoveDiacriticsChars(532) = "y"
    tblRemoveDiacriticsCodes(533) = &H1E99:        tblRemoveDiacriticsChars(533) = "y"
    tblRemoveDiacriticsCodes(534) = &H1EF3:        tblRemoveDiacriticsChars(534) = "y"
    tblRemoveDiacriticsCodes(535) = &H1EF5:        tblRemoveDiacriticsChars(535) = "y"
    tblRemoveDiacriticsCodes(536) = &H1EF7:        tblRemoveDiacriticsChars(536) = "y"
    tblRemoveDiacriticsCodes(537) = &H1EF9:        tblRemoveDiacriticsChars(537) = "y"
    tblRemoveDiacriticsCodes(538) = &HDD:          tblRemoveDiacriticsChars(538) = "Y"
    tblRemoveDiacriticsCodes(539) = &H176:         tblRemoveDiacriticsChars(539) = "Y"
    tblRemoveDiacriticsCodes(540) = &H178:         tblRemoveDiacriticsChars(540) = "Y"
    tblRemoveDiacriticsCodes(541) = &H1B3:         tblRemoveDiacriticsChars(541) = "Y"
    tblRemoveDiacriticsCodes(542) = &H232:         tblRemoveDiacriticsChars(542) = "Y"
    tblRemoveDiacriticsCodes(543) = &H24E:         tblRemoveDiacriticsChars(543) = "Y"
    tblRemoveDiacriticsCodes(544) = &H1E8E:        tblRemoveDiacriticsChars(544) = "Y"
    tblRemoveDiacriticsCodes(545) = &H1EF2:        tblRemoveDiacriticsChars(545) = "Y"
    tblRemoveDiacriticsCodes(546) = &H1EF4:        tblRemoveDiacriticsChars(546) = "Y"
    tblRemoveDiacriticsCodes(547) = &H1EF6:        tblRemoveDiacriticsChars(547) = "Y"
    tblRemoveDiacriticsCodes(548) = &H1EF8:        tblRemoveDiacriticsChars(548) = "Y"
    tblRemoveDiacriticsCodes(549) = &H17A:         tblRemoveDiacriticsChars(549) = "z"
    tblRemoveDiacriticsCodes(550) = &H17C:         tblRemoveDiacriticsChars(550) = "z"
    tblRemoveDiacriticsCodes(551) = &H17E:         tblRemoveDiacriticsChars(551) = "z"
    tblRemoveDiacriticsCodes(552) = &H1B6:         tblRemoveDiacriticsChars(552) = "z"
    tblRemoveDiacriticsCodes(553) = &H225:         tblRemoveDiacriticsChars(553) = "z"
    tblRemoveDiacriticsCodes(554) = &H240:         tblRemoveDiacriticsChars(554) = "z"
    tblRemoveDiacriticsCodes(555) = &H1E91:        tblRemoveDiacriticsChars(555) = "z"
    tblRemoveDiacriticsCodes(556) = &H1E93:        tblRemoveDiacriticsChars(556) = "z"
    tblRemoveDiacriticsCodes(557) = &H1E95:        tblRemoveDiacriticsChars(557) = "z"
    tblRemoveDiacriticsCodes(558) = &H179:         tblRemoveDiacriticsChars(558) = "Z"
    tblRemoveDiacriticsCodes(559) = &H17B:         tblRemoveDiacriticsChars(559) = "Z"
    tblRemoveDiacriticsCodes(560) = &H17D:         tblRemoveDiacriticsChars(560) = "Z"
    tblRemoveDiacriticsCodes(561) = &H1B5:         tblRemoveDiacriticsChars(561) = "Z"
    tblRemoveDiacriticsCodes(562) = &H224:         tblRemoveDiacriticsChars(562) = "Z"
    tblRemoveDiacriticsCodes(563) = &H1E90:        tblRemoveDiacriticsChars(563) = "Z"
    tblRemoveDiacriticsCodes(564) = &H1E92:        tblRemoveDiacriticsChars(564) = "Z"
    tblRemoveDiacriticsCodes(565) = &H1E94:        tblRemoveDiacriticsChars(565) = "Z"
    End Sub
    Kind regards
    PGC

    To understand recursion, you must understand recursion.

  4. #14
    MrExcel MVP
    Join Date
    Apr 2006
    Posts
    19,644
    Post Thanks / Like
    Mentioned
    14 Post(s)
    Tagged
    2 Thread(s)

    Default Re: Convert Symbols to letters

    For documentation purposes I repeat the characters included in the tables, but this time including the characters themselves, that are displayed in html:


    Letter a A - Unicode Character Codes

    U+00E0 Latin Small Letter A with grave
    U+00E1 Latin Small Letter A with acute
    U+00E2 Latin Small Letter A with circumflex
    U+00E3 Latin Small Letter A with tilde
    U+00E4 Latin Small Letter A with diaeresis
    U+00E5 Latin Small Letter A with ring above
    U+0101 ā Latin Small Letter A with macron
    U+0103 ă Latin Small Letter A with breve
    U+0105 ą Latin Small Letter A with ogonek
    U+01CE ǎ Latin Small Letter A with caron
    U+01DF ǟ Latin Small Letter A with diaeresis and macron
    U+01E1 ǡ Latin Small Letter A with dot above and macron
    U+01FB ǻ Latin Small Letter A with ring above and acute
    U+0201 ȁ Latin Small Letter A with double grave
    U+0203 ȃ Latin Small Letter A with inverted breve
    U+0227 ȧ Latin Small Letter A with dot above
    U+1E01 ḁ Latin Small Letter A with ring below
    U+1E9A ẚ Latin Small Letter A with right half ring
    U+1EA1 ạ Latin Small Letter A with dot below
    U+1EA3 ả Latin Small Letter A with hook above
    U+1EA5 ấ Latin Small Letter A with circumflex and acute
    U+1EA7 ầ Latin Small Letter A with circumflex and grave
    U+1EA9 ẩ Latin Small Letter A with circumflex and hook above
    U+1EAB ẫ Latin Small Letter A with circumflex and tilde
    U+1EAD ậ Latin Small Letter A with circumflex and dot below
    U+1EAF ắ Latin Small Letter A with breve and acute
    U+1EB1 ằ Latin Small Letter A with breve and grave
    U+1EB3 ẳ Latin Small Letter A with breve and hook above
    U+1EB5 ẵ Latin Small Letter A with breve and tilde
    U+1EB7 ặ Latin Small Letter A with breve and dot below
    U+00C0 Latin Capital Letter A with grave
    U+00C1 Latin Capital letter A with acute
    U+00C2 Latin Capital letter A with circumflex
    U+00C3 Latin Capital letter A with tilde
    U+00C4 Latin Capital letter A with diaeresis
    U+00C5 Latin Capital letter A with ring above
    U+0100 Ā Latin Capital Letter A with macron
    U+0102 Ă Latin Capital Letter A with breve
    U+0104 Ą Latin Capital Letter A with ogonek
    U+01CD Ǎ Latin Capital Letter A with caron
    U+01DE Ǟ Latin Capital Letter A with diaeresis and macron
    U+01E0 Ǡ Latin Capital Letter A with dot above and macron
    U+01FA Ǻ Latin Capital Letter A with ring above and acute
    U+0200 Ȁ Latin Capital Letter A with double grave
    U+0202 Ȃ Latin Capital Letter A with inverted breve
    U+0226 Ȧ Latin Capital Letter A with dot above
    U+023A Ⱥ Latin Capital Letter A with stroke
    U+1E00 Ḁ Latin Capital Letter A with ring below
    U+1EA0 Ạ Latin Capital Letter A with dot below
    U+1EA2 Ả Latin Capital Letter A with hook above
    U+1EA4 Ấ Latin Capital Letter A with circumflex and acute
    U+1EA6 Ầ Latin Capital Letter A with circumflex and grave
    U+1EA8 Ẩ Latin Capital Letter A with circumflex and hook above
    U+1EAA Ẫ Latin Capital Letter A with circumflex and tilde
    U+1EAC Ậ Latin Capital Letter A with circumflex and dot below
    U+1EAE Ắ Latin Capital Letter A with breve and acute
    U+1EB0 Ằ Latin Capital Letter A with breve and grave
    U+1EB2 Ẳ Latin Capital Letter A with breve and hook above
    U+1EB4 Ẵ Latin Capital Letter A with breve and tilde
    U+1EB6 Ặ Latin Capital Letter A with breve and dot below

    Letter b B - Unicode Character Codes

    U+0180 ƀ Latin Small Letter B with stroke
    U+0183 ƃ Latin Small Letter B with top bar
    U+1E03 ḃ Latin Small Letter B with dot above
    U+1E05 ḅ Latin Small Letter B with dot below
    U+1E07 ḇ Latin Small Letter B with line below
    U+0181 Ɓ Latin Capital Letter B with hook
    U+0182 Ƃ Latin Capital Letter B with top bar
    U+0243 Ƀ Latin Capital Letter B with stroke
    U+1E02 Ḃ Latin Capital Letter B with dot above
    U+1E04 Ḅ Latin Capital Letter B with dot below
    U+1E06 Ḇ Latin Capital Letter B with line below

    Letter c C - Unicode Character Codes

    U+00E7 Latin Small Letter C with cedilla
    U+0107 ć Latin Small Letter C with acute
    U+0109 ĉ Latin Small Letter C with circumflex
    U+010B ċ Latin Small Letter C with dot above
    U+010D č Latin Small Letter C with caron
    U+0188 ƈ Latin Small Letter C with hook
    U+023C ȼ Latin Small Letter C with stroke
    U+1E09 ḉ Latin Small Letter C with cedilla and acute
    U+00C7 Latin Capital letter C with cedilla
    U+0106 Ć Latin Capital Letter C with acute
    U+0108 Ĉ Latin Capital Letter C with circumflex
    U+010A Ċ Latin Capital Letter C with dot above
    U+010C Č Latin Capital Letter C with caron
    U+0187 Ƈ Latin Capital Letter C with hook
    U+023B Ȼ Latin Capital Letter C with stroke
    U+1E08 Ḉ Latin Capital Letter C with cedilla and acute

    Letter d D - Unicode Character Codes

    U+010F ď Latin Small Letter D with caron
    U+0111 đ Latin Small Letter D with stroke
    U+018C ƌ Latin Small Letter D with top bar
    U+0221 ȡ Latin Small Letter D with curl
    U+1E0B ḋ Latin Small Letter D with dot above
    U+1E0D ḍ Latin Small Letter D with dot below
    U+1E0F ḏ Latin Small Letter D with line below
    U+1E11 ḑ Latin Small Letter D with cedilla
    U+1E13 ḓ Latin Small Letter D with circumflex below
    U+010E Ď Latin Capital Letter D with caron
    U+0110 Đ Latin Capital Letter D with stroke
    U+018A Ɗ Latin Capital Letter D with hook
    U+018B Ƌ Latin Capital Letter D with top bar
    U+01C5 Dž Latin Capital Letter D with Small Letter Z with caron
    U+01F2 Dz Latin Capital Letter D with Small Letter Z
    U+1E0A Ḋ Latin Capital Letter D with dot above
    U+1E0C Ḍ Latin Capital Letter D with dot below
    U+1E0E Ḏ Latin Capital Letter D with line below
    U+1E10 Ḑ Latin Capital Letter D with cedilla
    U+1E12 Ḓ Latin Capital Letter D with circumflex below

    Letter e E - Unicode Character Codes

    U+00E8 Latin Small Letter E with grave
    U+00E9 Latin Small Letter E with acute
    U+00EA Latin Small Letter E with circumflex
    U+00EB Latin Small Letter E with diaeresis
    U+0113 ē Latin Small Letter E with macron
    U+0115 ĕ Latin Small Letter E with breve
    U+0117 ė Latin Small Letter E with dot above
    U+0119 ę Latin Small Letter E with ogonek
    U+011B ě Latin Small Letter E with caron
    U+0205 ȅ Latin Small Letter E with double grave
    U+0207 ȇ Latin Small Letter E with inverted breve
    U+0229 ȩ Latin Small Letter E with cedilla
    U+0247 ɇ Latin Small Letter E with stroke
    U+1E15 ḕ Latin Small Letter E with macron and grave
    U+1E17 ḗ Latin Small Letter E with macron and acute
    U+1E19 ḙ Latin Small Letter E with circumflex below
    U+1E1B ḛ Latin Small Letter E with tilde below
    U+1E1D ḝ Latin Small Letter E with cedilla and breve
    U+1EB9 ẹ Latin Small Letter E with dot below
    U+1EBB ẻ Latin Small Letter E with hook above
    U+1EBD ẽ Latin Small Letter E with tilde
    U+1EBF ế Latin Small Letter E with circumflex and acute
    U+1EC1 ề Latin Small Letter E with circumflex and grave
    U+1EC3 ể Latin Small Letter E with circumflex and hook above
    U+1EC5 ễ Latin Small Letter E with circumflex and tilde
    U+1EC7 ệ Latin Small Letter E with circumflex and dot below
    U+00C8 Latin Capital letter E with grave
    U+00C9 Latin Capital letter E with acute
    U+00CA Latin Capital letter E with circumflex
    U+00CB Latin Capital letter E with diaeresis
    U+0112 Ē Latin Capital Letter E with macron
    U+0114 Ĕ Latin Capital Letter E with breve
    U+0116 Ė Latin Capital Letter E with dot above
    U+0118 Ę Latin Capital Letter E with ogonek
    U+011A Ě Latin Capital Letter E with caron
    U+0204 Ȅ Latin Capital Letter E with double grave
    U+0206 Ȇ Latin Capital Letter E with inverted breve
    U+0228 Ȩ Latin Capital Letter E with cedilla
    U+0246 Ɇ Latin Capital Letter E with stroke
    U+1E14 Ḕ Latin Capital Letter E with macron and grave
    U+1E16 Ḗ Latin Capital Letter E with macron and acute
    U+1E18 Ḙ Latin Capital Letter E with circumflex below
    U+1E1A Ḛ Latin Capital Letter E with tilde below
    U+1E1C Ḝ Latin Capital Letter E with cedilla and breve
    U+1EB8 Ẹ Latin Capital Letter E with dot below
    U+1EBA Ẻ Latin Capital Letter E with hook above
    U+1EBC Ẽ Latin Capital Letter E with tilde
    U+1EBE Ế Latin Capital Letter E with circumflex and acute
    U+1EC0 Ề Latin Capital Letter E with circumflex and grave
    U+1EC2 Ể Latin Capital Letter E with circumflex and hook above
    U+1EC4 Ễ Latin Capital Letter E with circumflex and tilde
    U+1EC6 Ệ Latin Capital Letter E with circumflex and dot below

    Letter f F - Unicode Character Codes

    U+0192 ƒ Latin Small Letter F with hook
    U+1E1F ḟ Latin Small Letter F with dot above
    U+0191 Ƒ Latin Capital Letter F with hook
    U+1E1E Ḟ Latin Capital Letter F with dot above

    Letter g G - Unicode Character Codes

    U+011D ĝ Latin Small Letter G with circumflex
    U+011F ğ Latin Small Letter G with breve
    U+0121 ġ Latin Small Letter G with dot above
    U+0123 ģ Latin Small Letter G with cedilla
    U+01E5 ǥ Latin Small Letter G with stroke
    U+01E7 ǧ Latin Small Letter G with caron
    U+01F5 ǵ Latin Small Letter G with acute
    U+1E21 ḡ Latin Small Letter G with macron
    U+011C Ĝ Latin Capital Letter G with circumflex
    U+011E Ğ Latin Capital Letter G with breve
    U+0120 Ġ Latin Capital Letter G with dot above
    U+0122 Ģ Latin Capital Letter G with cedilla
    U+0193 Ɠ Latin Capital Letter G with hook
    U+01E4 Ǥ Latin Capital Letter G with stroke
    U+01E6 Ǧ Latin Capital Letter G with caron
    U+01F4 Ǵ Latin Capital Letter G with acute
    U+1E20 Ḡ Latin Capital Letter G with macron

    Letter h H - Unicode Character Codes

    U+0125 ĥ Latin Small Letter H with circumflex
    U+0127 ħ Latin Small Letter H with stroke
    U+021F ȟ Latin Small Letter H with caron
    U+1E23 ḣ Latin Small Letter H with dot above
    U+1E25 ḥ Latin Small Letter H with dot below
    U+1E27 ḧ Latin Small Letter H with diaeresis
    U+1E29 ḩ Latin Small Letter H with cedilla
    U+1E2B ḫ Latin Small Letter H with breve below
    U+1E96 ẖ Latin Small Letter H with line below
    U+0124 Ĥ Latin Capital Letter H with circumflex
    U+0126 Ħ Latin Capital Letter H with stroke
    U+021E Ȟ Latin Capital Letter H with caron
    U+1E22 Ḣ Latin Capital Letter H with dot above
    U+1E24 Ḥ Latin Capital Letter H with dot below
    U+1E26 Ḧ Latin Capital Letter H with diaeresis
    U+1E28 Ḩ Latin Capital Letter H with cedilla
    U+1E2A Ḫ Latin Capital Letter H with breve below

    Letter i I - Unicode Character Codes

    U+00EC Latin Small Letter I with grave
    U+00ED Latin Small Letter I with acute
    U+00EE Latin Small Letter I with circumflex
    U+00EF Latin Small Letter I with diaeresis
    U+0129 ĩ Latin Small Letter I with tilde
    U+012B ī Latin Small Letter I with macron
    U+012D ĭ Latin Small Letter I with breve
    U+012F į Latin Small Letter I with ogonek
    U+01D0 ǐ Latin Small Letter I with caron
    U+0209 ȉ Latin Small Letter I with double grave
    U+020B ȋ Latin Small Letter I with inverted breve
    U+1E2D ḭ Latin Small Letter I with tilde below
    U+1E2F ḯ Latin Small Letter I with diaeresis and acute
    U+1EC9 ỉ Latin Small Letter I with hook above
    U+1ECB ị Latin Small Letter I with dot below
    U+00CC Latin Capital letter I with grave
    U+00CD Latin Capital letter I with acute
    U+00CE Latin Capital letter I with circumflex
    U+00CF Latin Capital letter I with diaeresis
    U+0128 Ĩ Latin Capital Letter I with tilde
    U+012A Ī Latin Capital Letter I with macron
    U+012C Ĭ Latin Capital Letter I with breve
    U+012E Į Latin Capital Letter I with ogonek
    U+0130 İ Latin Capital Letter I with dot above
    U+0197 Ɨ Latin Capital Letter I with stroke
    U+01CF Ǐ Latin Capital Letter I with caron
    U+0208 Ȉ Latin Capital Letter I with double grave
    U+020A Ȋ Latin Capital Letter I with inverted breve
    U+1E2C Ḭ Latin Capital Letter I with tilde below
    U+1E2E Ḯ Latin Capital Letter I with diaeresis and acute
    U+1EC8 Ỉ Latin Capital Letter I with hook above
    U+1ECA Ị Latin Capital Letter I with dot below

    Letter j J - Unicode Character Codes

    U+0135 ĵ Latin Small Letter J with circumflex
    U+01F0 ǰ Latin Small Letter J with caron
    U+0249 ɉ Latin Small Letter J with stroke
    U+0134 Ĵ Latin Capital Letter J with circumflex
    U+0248 Ɉ Latin Capital Letter J with stroke

    Letter k K - Unicode Character Codes

    U+0137 ķ Latin Small Letter K with cedilla
    U+0199 ƙ Latin Small Letter K with hook
    U+01E9 ǩ Latin Small Letter K with caron
    U+1E31 ḱ Latin Small Letter K with acute
    U+1E33 ḳ Latin Small Letter K with dot below
    U+1E35 ḵ Latin Small Letter K with line below
    U+0136 Ķ Latin Capital Letter K with cedilla
    U+0198 Ƙ Latin Capital Letter K with hook
    U+01E8 Ǩ Latin Capital Letter K with caron
    U+1E30 Ḱ Latin Capital Letter K with acute
    U+1E32 Ḳ Latin Capital Letter K with dot below
    U+1E34 Ḵ Latin Capital Letter K with line below

    Letter l L - Unicode Character Codes

    U+013A ĺ Latin Small Letter L with acute
    U+013C ļ Latin Small Letter L with cedilla
    U+013E ľ Latin Small Letter L with caron
    U+0140 ŀ Latin Small Letter L with middle dot
    U+0142 ł Latin Small Letter L with stroke
    U+019A ƚ Latin Small Letter L with bar
    U+0234 ȴ Latin Small Letter L with curl
    U+1E37 ḷ Latin Small Letter L with dot below
    U+1E39 ḹ Latin Small Letter L with dot below and macron
    U+1E3B ḻ Latin Small Letter L with line below
    U+1E3D ḽ Latin Small Letter L with circumflex below
    U+0139 Ĺ Latin Capital Letter L with acute
    U+013B Ļ Latin Capital Letter L with cedilla
    U+013D Ľ Latin Capital Letter L with caron
    U+013F Ŀ Latin Capital Letter L with middle dot
    U+0141 Ł Latin Capital Letter L with stroke
    U+01C8 Lj Latin Capital Letter L with Small Letter J
    U+023D Ƚ Latin Capital Letter L with bar
    U+1E36 Ḷ Latin Capital Letter L with dot below
    U+1E38 Ḹ Latin Capital Letter L with dot below and macron
    U+1E3A Ḻ Latin Capital Letter L with line below
    U+1E3C Ḽ Latin Capital Letter L with circumflex below

    Letter m M - Unicode Character Codes

    U+1E3F ḿ Latin Small Letter M with acute
    U+1E41 ṁ Latin Small Letter M with dot above
    U+1E43 ṃ Latin Small Letter M with dot below
    U+1E3E Ḿ Latin Capital Letter M with acute
    U+1E40 Ṁ Latin Capital Letter M with dot above
    U+1E42 Ṃ Latin Capital Letter M with dot below

    Letter n N - Unicode Character Codes

    U+00F1 Latin Small Letter N with tilde
    U+0144 ń Latin Small Letter N with acute
    U+0146 ņ Latin Small Letter N with cedilla
    U+0148 ň Latin Small Letter N with caron
    U+0149 ʼn Latin Small Letter N preceded by apostrophe[3]
    U+019E ƞ Latin Small Letter N with long right leg
    U+01F9 ǹ Latin Small Letter N with grave
    U+0235 ȵ Latin Small Letter N with curl
    U+1E45 ṅ Latin Small Letter N with dot above
    U+1E47 ṇ Latin Small Letter N with dot below
    U+1E49 ṉ Latin Small Letter N with line below
    U+1E4B ṋ Latin Small Letter N with circumflex below
    U+00D1 Latin Capital letter N with tilde
    U+0143 Ń Latin Capital Letter N with acute
    U+0145 Ņ Latin Capital Letter N with cedilla
    U+0147 Ň Latin Capital Letter N with caron
    U+019D Ɲ Latin Capital Letter N with left hook
    U+01F8 Ǹ Latin Capital Letter N with grave
    U+0220 Ƞ Latin Capital Letter N with long right leg
    U+1E44 Ṅ Latin Capital Letter N with dot above
    U+1E46 Ṇ Latin Capital Letter N with dot below
    U+1E48 Ṉ Latin Capital Letter N with line below
    U+1E4A Ṋ Latin Capital Letter N with circumflex below

    Letter o O - Unicode Character Codes

    U+00F2 Latin Small Letter O with grave
    U+00F3 Latin Small Letter O with acute
    U+00F4 Latin Small Letter O with circumflex
    U+00F5 Latin Small Letter O with tilde
    U+00F6 Latin Small Letter O with diaeresis
    U+00F8 Latin Small Letter O with stroke
    U+014D ō Latin Small Letter O with macron
    U+014F ŏ Latin Small Letter O with breve
    U+0151 ő Latin Small Letter O with double acute
    U+01A1 ơ Latin Small Letter O with horn
    U+01D2 ǒ Latin Small Letter O with caron
    U+01EB ǫ Latin Small Letter O with ogonek
    U+01ED ǭ Latin Small Letter O with ogonek and macron
    U+01FF ǿ Latin Small Letter O with stroke and acute
    U+020D ȍ Latin Small Letter O with double grave
    U+020F ȏ Latin Small Letter O with inverted breve
    U+022B ȫ Latin Small Letter O with diaeresis and macron
    U+022D ȭ Latin Small Letter O with tilde and macron
    U+022F ȯ Latin Small Letter O with dot above
    U+0231 ȱ Latin Small Letter O with dot above and macron
    U+1E4D ṍ Latin Small Letter O with tilde and acute
    U+1E4F ṏ Latin Small Letter O with tilde and diaeresis
    U+1E51 ṑ Latin Small Letter O with macron and grave
    U+1E53 ṓ Latin Small Letter O with macron and acute
    U+1ECD ọ Latin Small Letter O with dot below
    U+1ECF ỏ Latin Small Letter O with hook above
    U+1ED1 ố Latin Small Letter O with circumflex and acute
    U+1ED3 ồ Latin Small Letter O with circumflex and grave
    U+1ED5 ổ Latin Small Letter O with circumflex and hook above
    U+1ED7 ỗ Latin Small Letter O with circumflex and tilde
    U+1ED9 ộ Latin Small Letter O with circumflex and dot below
    U+1EDB ớ Latin Small Letter O with horn and acute
    U+1EDD ờ Latin Small Letter O with horn and grave
    U+1EDF ở Latin Small Letter O with horn and hook above
    U+1EE1 ỡ Latin Small Letter O with horn and tilde
    U+1EE3 ợ Latin Small Letter O with horn and dot below
    U+00D2 Latin Capital letter O with grave
    U+00D3 Latin Capital letter O with acute
    U+00D4 Latin Capital letter O with circumflex
    U+00D5 Latin Capital letter O with tilde
    U+00D6 Latin Capital letter O with diaeresis
    U+00D8 Latin Capital letter O with stroke
    U+014C Ō Latin Capital Letter O with macron
    U+014E Ŏ Latin Capital Letter O with breve
    U+0150 Ő Latin Capital Letter O with double acute
    U+019F Ɵ Latin Capital Letter O with middle tilde
    U+01A0 Ơ Latin Capital Letter O with horn
    U+01D1 Ǒ Latin Capital Letter O with caron
    U+01EA Ǫ Latin Capital Letter O with ogonek
    U+01EC Ǭ Latin Capital Letter O with ogonek and macron
    U+01FE Ǿ Latin Capital Letter O with stroke and acute
    U+020C Ȍ Latin Capital Letter O with double grave
    U+020E Ȏ Latin Capital Letter O with inverted breve
    U+022A Ȫ Latin Capital Letter O with diaeresis and macron
    U+022C Ȭ Latin Capital Letter O with tilde and macron
    U+022E Ȯ Latin Capital Letter O with dot above
    U+0230 Ȱ Latin Capital Letter O with dot above and macron
    U+1E4C Ṍ Latin Capital Letter O with tilde and acute
    U+1E4E Ṏ Latin Capital Letter O with tilde and diaeresis
    U+1E50 Ṑ Latin Capital Letter O with macron and grave
    U+1E52 Ṓ Latin Capital Letter O with macron and acute
    U+1ECC Ọ Latin Capital Letter O with dot below
    U+1ECE Ỏ Latin Capital Letter O with hook above
    U+1ED0 Ố Latin Capital Letter O with circumflex and acute
    U+1ED2 Ồ Latin Capital Letter O with circumflex and grave
    U+1ED4 Ổ Latin Capital Letter O with circumflex and hook above
    U+1ED6 Ỗ Latin Capital Letter O with circumflex and tilde
    U+1ED8 Ộ Latin Capital Letter O with circumflex and dot below
    U+1EDA Ớ Latin Capital Letter O with horn and acute
    U+1EDC Ờ Latin Capital Letter O with horn and grave
    U+1EDE Ở Latin Capital Letter O with horn and hook above
    U+1EE0 Ỡ Latin Capital Letter O with horn and tilde
    U+1EE2 Ợ Latin Capital Letter O with horn and dot below

    Letter p P - Unicode Character Codes

    U+01A5 ƥ Latin Small Letter P with hook
    U+1E55 ṕ Latin Small Letter P with acute
    U+1E57 ṗ Latin Small Letter P with dot above
    U+01A4 Ƥ Latin Capital Letter P with hook
    U+1E54 Ṕ Latin Capital Letter P with acute
    U+1E56 Ṗ Latin Capital Letter P with dot above

    Letter q Q - Unicode Character Codes

    U+024B ɋ Latin Small Letter Q with hook tail
    U+024A Ɋ Latin Capital Letter Q with hook tail

    Letter r R - Unicode Character Codes

    U+0155 ŕ Latin Small Letter R with acute
    U+0157 ŗ Latin Small Letter R with cedilla
    U+0159 ř Latin Small Letter R with caron
    U+0211 ȑ Latin Small Letter R with double grave
    U+0213 ȓ Latin Small Letter R with inverted breve
    U+024D ɍ Latin Small Letter R with stroke
    U+1E59 ṙ Latin Small Letter R with dot above
    U+1E5B ṛ Latin Small Letter R with dot below
    U+1E5D ṝ Latin Small Letter R with dot below and macron
    U+1E5F ṟ Latin Small Letter R with line below
    U+0154 Ŕ Latin Capital Letter R with acute
    U+0156 Ŗ Latin Capital Letter R with cedilla
    U+0158 Ř Latin Capital Letter R with caron
    U+0210 Ȑ Latin Capital Letter R with double grave
    U+0212 Ȓ Latin Capital Letter R with inverted breve
    U+024C Ɍ Latin Capital Letter R with stroke
    U+1E58 Ṙ Latin Capital Letter R with dot above
    U+1E5A Ṛ Latin Capital Letter R with dot below
    U+1E5C Ṝ Latin Capital Letter R with dot below and macron
    U+1E5E Ṟ Latin Capital Letter R with line below

    Letter s S - Unicode Character Codes

    U+015B ś Latin Small Letter S with acute
    U+015D ŝ Latin Small Letter S with circumflex
    U+015F ş Latin Small Letter S with cedilla
    U+0161 š Latin Small Letter S with caron
    U+0219 ș Latin Small Letter S with comma below
    U+023F ȿ Latin Small Letter S with swash tail
    U+1E61 ṡ Latin Small Letter S with dot above
    U+1E63 ṣ Latin Small Letter S with dot below
    U+1E65 ṥ Latin Small Letter S with acute and dot above
    U+1E67 ṧ Latin Small Letter S with caron and dot above
    U+1E69 ṩ Latin Small Letter S with dot below and dot above
    U+015A Ś Latin Capital Letter S with acute
    U+015C Ŝ Latin Capital Letter S with circumflex
    U+015E Ş Latin Capital Letter S with cedilla
    U+0160 Š Latin Capital Letter S with caron
    U+0218 Ș Latin Capital Letter S with comma below
    U+1E60 Ṡ Latin Capital Letter S with dot above
    U+1E62 Ṣ Latin Capital Letter S with dot below
    U+1E64 Ṥ Latin Capital Letter S with acute and dot above
    U+1E66 Ṧ Latin Capital Letter S with caron and dot above
    U+1E68 Ṩ Latin Capital Letter S with dot below and dot above

    Letter t T - Unicode Character Codes

    U+0163 ţ Latin Small Letter T with cedilla
    U+0165 ť Latin Small Letter T with caron
    U+0167 ŧ Latin Small Letter T with stroke
    U+01AB ƫ Latin Small Letter T with palatal hook
    U+01AD ƭ Latin Small Letter T with hook
    U+021B ț Latin Small Letter T with comma below
    U+0236 ȶ Latin Small Letter T with curl
    U+1E6B ṫ Latin Small Letter T with dot above
    U+1E6D ṭ Latin Small Letter T with dot below
    U+1E6F ṯ Latin Small Letter T with line below
    U+1E71 ṱ Latin Small Letter T with circumflex below
    U+1E97 ẗ Latin Small Letter T with diaeresis
    U+0162 Ţ Latin Capital Letter T with cedilla
    U+0164 Ť Latin Capital Letter T with caron
    U+0166 Ŧ Latin Capital Letter T with stroke
    U+01AC Ƭ Latin Capital Letter T with hook
    U+01AE Ʈ Latin Capital Letter T with retroflex hook
    U+021A Ț Latin Capital Letter T with comma below
    U+023E Ⱦ Latin Capital Letter T with diagonal stroke
    U+1E6A Ṫ Latin Capital Letter T with dot above
    U+1E6C Ṭ Latin Capital Letter T with dot below
    U+1E6E Ṯ Latin Capital Letter T with line below
    U+1E70 Ṱ Latin Capital Letter T with circumflex below

    Letter u U - Unicode Character Codes

    U+00F9 Latin Small Letter U with grave
    U+00FA Latin Small Letter U with acute
    U+00FB Latin Small Letter U with circumflex
    U+00FC Latin Small Letter U with diaeresis
    U+0169 ũ Latin Small Letter U with tilde
    U+016B ū Latin Small Letter U with macron
    U+016D ŭ Latin Small Letter U with breve
    U+016F ů Latin Small Letter U with ring above
    U+0171 ű Latin Small Letter U with double acute
    U+0173 ų Latin Small Letter U with ogonek
    U+01B0 ư Latin Small Letter U with horn
    U+01D4 ǔ Latin Small Letter U with caron
    U+01D6 ǖ Latin Small Letter U with diaeresis and macron
    U+01D8 ǘ Latin Small Letter U with diaeresis and acute
    U+01DA ǚ Latin Small Letter U with diaeresis and caron
    U+01DC ǜ Latin Small Letter U with diaeresis and grave
    U+0215 ȕ Latin Small Letter U with double grave
    U+0217 ȗ Latin Small Letter U with inverted breve
    U+1E73 ṳ Latin Small Letter U with diaeresis below
    U+1E75 ṵ Latin Small Letter U with tilde below
    U+1E77 ṷ Latin Small Letter U with circumflex below
    U+1E79 ṹ Latin Small Letter U with tilde and acute
    U+1E7B ṻ Latin Small Letter U with macron and diaeresis
    U+1EE5 ụ Latin Small Letter U with dot below
    U+1EE7 ủ Latin Small Letter U with hook above
    U+1EE9 ứ Latin Small Letter U with horn and acute
    U+1EEB ừ Latin Small Letter U with horn and grave
    U+1EED ử Latin Small Letter U with horn and hook above
    U+1EEF ữ Latin Small Letter U with horn and tilde
    U+1EF1 ự Latin Small Letter U with horn and dot below
    U+00D9 Latin Capital letter U with grave
    U+00DA Latin Capital letter U with acute
    U+00DB Latin Capital Letter U with circumflex
    U+00DC Latin Capital Letter U with diaeresis
    U+0168 Ũ Latin Capital Letter U with tilde
    U+016A Ū Latin Capital Letter U with macron
    U+016C Ŭ Latin Capital Letter U with breve
    U+016E Ů Latin Capital Letter U with ring above
    U+0170 Ű Latin Capital Letter U with double acute
    U+0172 Ų Latin Capital Letter U with ogonek
    U+01AF Ư Latin Capital Letter U with horn
    U+01D3 Ǔ Latin Capital Letter U with caron
    U+01D5 Ǖ Latin Capital Letter U with diaeresis and macron
    U+01D7 Ǘ Latin Capital Letter U with diaeresis and acute
    U+01D9 Ǚ Latin Capital Letter U with diaeresis and caron
    U+01DB Ǜ Latin Capital Letter U with diaeresis and grave
    U+0214 Ȕ Latin Capital Letter U with double grave
    U+0216 Ȗ Latin Capital Letter U with inverted breve
    U+0244 Ʉ Latin Capital Letter U bar
    U+1E72 Ṳ Latin Capital Letter U with diaeresis below
    U+1E74 Ṵ Latin Capital Letter U with tilde below
    U+1E76 Ṷ Latin Capital Letter U with circumflex below
    U+1E78 Ṹ Latin Capital Letter U with tilde and acute
    U+1E7A Ṻ Latin Capital Letter U with macron and diaeresis
    U+1EE4 Ụ Latin Capital Letter U with dot below
    U+1EE6 Ủ Latin Capital Letter U with hook above
    U+1EE8 Ứ Latin Capital Letter U with horn and acute
    U+1EEA Ừ Latin Capital Letter U with horn and grave
    U+1EEC Ử Latin Capital Letter U with horn and hook above
    U+1EEE Ữ Latin Capital Letter U with horn and tilde
    U+1EF0 Ự Latin Capital Letter U with horn and dot below

    Letter v V - Unicode Character Codes

    U+1E7D ṽ Latin Small Letter V with tilde
    U+1E7F ṿ Latin Small Letter V with dot below
    U+01B2 Ʋ Latin Capital Letter V with hook
    U+1E7C Ṽ Latin Capital Letter V with tilde
    U+1E7E Ṿ Latin Capital Letter V with dot below

    Letter w W - Unicode Character Codes

    U+0175 ŵ Latin Small Letter W with circumflex
    U+1E81 ẁ Latin Small Letter W with grave
    U+1E83 ẃ Latin Small Letter W with acute
    U+1E85 ẅ Latin Small Letter W with diaeresis
    U+1E87 ẇ Latin Small Letter W with dot above
    U+1E89 ẉ Latin Small Letter W with dot below
    U+1E98 ẘ Latin Small Letter W with ring above
    U+0174 Ŵ Latin Capital Letter W with circumflex
    U+1E80 Ẁ Latin Capital Letter W with grave
    U+1E82 Ẃ Latin Capital Letter W with acute
    U+1E84 Ẅ Latin Capital Letter W with diaeresis
    U+1E86 Ẇ Latin Capital Letter W with dot above
    U+1E88 Ẉ Latin Capital Letter W with dot below

    Letter x X - Unicode Character Codes

    U+1E8B ẋ Latin Small Letter X with dot above
    U+1E8D ẍ Latin Small Letter X with diaeresis
    U+1E8A Ẋ Latin Capital Letter X with dot above
    U+1E8C Ẍ Latin Capital Letter X with diaeresis

    Letter y Y - Unicode Character Codes

    U+00FD Latin Small Letter Y with acute
    U+00FF Latin Small Letter Y with diaeresis
    U+0177 ŷ Latin Small Letter Y with circumflex
    U+01B4 ƴ Latin Small Letter Y with hook
    U+0233 ȳ Latin Small Letter Y with macron
    U+024F ɏ Latin Small Letter Y with stroke
    U+1E8F ẏ Latin Small Letter Y with dot above
    U+1E99 ẙ Latin Small Letter Y with ring above
    U+1EF3 ỳ Latin Small Letter Y with grave
    U+1EF5 ỵ Latin Small Letter Y with dot below
    U+1EF7 ỷ Latin Small Letter Y with hook above
    U+1EF9 ỹ Latin Small Letter Y with tilde
    U+00DD Latin Capital Letter Y with acute
    U+0176 Ŷ Latin Capital Letter Y with circumflex
    U+0178 Ÿ Latin Capital Letter Y with diaeresis
    U+01B3 Ƴ Latin Capital Letter Y with hook
    U+0232 Ȳ Latin Capital Letter Y with macron
    U+024E Ɏ Latin Capital Letter Y with stroke
    U+1E8E Ẏ Latin Capital Letter Y with dot above
    U+1EF2 Ỳ Latin Capital Letter Y with grave
    U+1EF4 Ỵ Latin Capital Letter Y with dot below
    U+1EF6 Ỷ Latin Capital Letter Y with hook above
    U+1EF8 Ỹ Latin Capital Letter Y with tilde

    Letter z Z - Unicode Character Codes

    U+017A ź Latin Small Letter Z with acute
    U+017C ż Latin Small Letter Z with dot above
    U+017E ž Latin Small Letter Z with caron
    U+01B6 ƶ Latin Small Letter Z with stroke
    U+0225 ȥ Latin Small Letter Z with hook
    U+0240 ɀ Latin Small Letter Z with swash tail
    U+1E91 ẑ Latin Small Letter Z with circumflex
    U+1E93 ẓ Latin Small Letter Z with dot below
    U+1E95 ẕ Latin Small Letter Z with line below
    U+0179 Ź Latin Capital Letter Z with acute
    U+017B Ż Latin Capital Letter Z with dot above
    U+017D Ž Latin Capital Letter Z with caron
    U+01B5 Ƶ Latin Capital Letter Z with stroke
    U+0224 Ȥ Latin Capital Letter Z with hook
    U+1E90 Ẑ Latin Capital Letter Z with circumflex
    U+1E92 Ẓ Latin Capital Letter Z with dot below
    U+1E94 Ẕ Latin Capital Letter Z with line below
    Kind regards
    PGC

    To understand recursion, you must understand recursion.

  5. #15
    MrExcel MVP
    Join Date
    Apr 2006
    Posts
    19,644
    Post Thanks / Like
    Mentioned
    14 Post(s)
    Tagged
    2 Thread(s)

    Default Re: Convert Symbols to letters

    I Rick

    I was working on an update of the code and did not see your post.

    My work tonight was trying to get all the simple Latin letters with diacritics.
    I found some more, by this I mean more that double.

    In this case I did not care about efficiency, I just wanted it to be we well documented.
    Kind regards
    PGC

    To understand recursion, you must understand recursion.

  6. #16
    MrExcel MVP Rick Rothstein's Avatar
    Join Date
    Apr 2011
    Location
    New Jersey, USA
    Posts
    34,748
    Post Thanks / Like
    Mentioned
    88 Post(s)
    Tagged
    31 Thread(s)

    Default Re: Convert Symbols to letters

    Quote Originally Posted by pgc01 View Post
    I Rick

    I was working on an update of the code and did not see your post.

    My work tonight was trying to get all the simple Latin letters with diacritics.
    I found some more, by this I mean more that double.
    I applaud you for your perseverance in compiling that list! However, you missed one that I see.... ASCII 138 ()

    Here is the function I posted above (works the same... the argument can be either the ASCII/ANSI code number of the diacritical character or the diacritical character itself), modified for your new list, plus I included the missing ASCII 138 () character as well...

    Code:
    Function Diacritic2Char(Diacritic As Variant) As String
      Dim Codes As String, Letters As String, LeftOfCode As String
      Const NormalChars As String = " !""#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdef" & _
                                    "ghijklmnopqrstuvwxyz{|}~ ­" & _
                                    ""
      Codes = "/224/225/226/227/228/229/257/259/261/462/479/481/507/513/515/551/7681/7834/7841/7843/7845" & _
              "/7847/7849/7851/7853/7855/7857/7859/7861/7863/192/193/194/195/196/197/256/258/260/461/478/480" & _
              "/506/512/514/550/570/7680/7840/7842/7844/7846/7848/7850/7852/7854/7856/7858/7860/7862/384/387/7683" & _
              "/7685/7687/385/386/579/7682/7684/7686/231/263/265/267/269/392/572/7689/199/262/264/266/268" & _
              "/391/571/7688/271/273/396/545/7691/7693/7695/7697/7699/270/272/394/395/453/498/7690/7692/7694" & _
              "/7696/7698/232/233/234/235/275/277/279/281/283/517/519/553/583/7701/7703/7705/7707/7709/7865" & _
              "/7867/7869/7871/7873/7875/7877/7879/200/201/202/203/274/276/278/280/282/516/518/552/582/7700" & _
              "/7702/7704/7706/7708/7864/7866/7868/7870/7872/7874/7876/7878/402/7711/401/7710/285/287/289/291/485" & _
              "/487/501/7713/284/286/288/290/403/484/486/500/7712/293/295/543/7715/7717/7719/7721/7723/7830" & _
              "/292/294/542/7714/7716/7718/7720/7722/236/237/238/239/297/299/301/303/464/521/523/7725/7727"
      Codes = Codes & "/7881/7883/204/205/206/207/296/298/300/302/304/407/463/520/522/7724/7726/7880/7882/309/496" & _
              "/585/308/584/311/409/489/7729/7731/7733/310/408/488/7728/7730/7732/314/316/318/320/322/410" & _
              "/564/7735/7737/7739/7741/313/315/317/319/321/456/573/7734/7736/7738/7740/7743/7745/7747/7742/7744" & _
              "/7746/241/324/326/328/329/414/505/565/7749/7751/7753/7755/209/323/325/327/413/504/544/7748" & _
              "/7750/7752/7754/242/243/244/245/246/248/333/335/337/417/466/491/493/511/525/527/555/557" & _
              "/559/561/7757/7759/7761/7763/7885/7887/7889/7891/7893/7895/7897/7899/7901/7903/7905/7907/210/211/212" & _
              "/213/214/216/332/334/336/415/416/465/490/492/510/524/526/554/556/558/560/7756/7758/7760" & _
              "/7762/7884/7886/7888/7890/7892/7894/7896/7898/7900/7902/7904/7906/421/7765/7767/420/7764/7766/587/586" & _
              "/341/343/345/529/531/589/7769/7771/7773/7775/340/342/344/528/530/588/7768/7770/7772/7774/347" & _
              "/349/351/353/537/575/7777/7779/7781/7783/7785/138/346/348/350/352/536/7776/7778/7780/7782/7784/355" & _
              "/357/359/427/429/539/566/7787/7789/7791/7793/7831/354/356/358/428/430/538/574/7786/7788/7790" & _
              "/7792/249/250/251/252/361/363/365/367/369/371/432/468/470/472/474/476/533/535/7795/7797" & _
              "/7799/7801/7803/7909/7911/7913/7915/7917/7919/7921/217/218/219/220/360/362/364/366/368/370/431" & _
              "/467/469/471/473/475/532/534/580/7794/7796/7798/7800/7802/7908/7910/7912/7914/7916/7918/7920/7805" & _
              "/7807/434/7804/7806/373/7809/7811/7813/7815/7817/7832/372/7808/7810/7812/7814/7816/7819/7821/7818/7820" & _
              "/253/255/375/436/563/591/7823/7833/7923/7925/7927/7929/221/374/376/435/562/590/7822/7922/7924" & _
              "/7926/7928/378/380/382/438/549/576/7825/7827/7829/377/379/381/437/548/7824/7826/7828/"
      Letters = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbbbbbBBBBBBccccccccCCCCCCCC" & _
                "dddddddddDDDDddDDDDDeeeeeeeeeeeeeeeeeeeeeeeeeeEEEEEEEEEEEEEEEEEEEEEEEEEEffFFgggggggg" & _
                "GGGGGGGGGhhhhhhhhhHHHHHHHHiiiiiiiiiiiiiiiIIIIIIIIIIIIIIIIIjjjJJkkkkkkKKKKKKlllllllllll" & _
                "LLLLLlLLLLLmmmMMMnnnnnnnnnnnnNNNNNNNNNNNooooooooooooooooooooooooooooooooooooOOOOOOOOOOO" & _
                "OOOOOOOOOOOOOOOOOOOOOOOOOOpppPPPqQrrrrrrrrrrRRRRRRRRRRsssssssssssSSSSSSSSSSStttttttttttt" & _
                "TTTTTTTTTTTuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUvvVVVwwwwwww" & _
                "WWWWWWxxXXyyyyyyyyyyyyYYYYYYYYYYYzzzzzzzzzZZZZZZZZ"
      If Diacritic Like "*[!0-9]*" Then
        If InStr(NormalChars, Diacritic) Then
          Diacritic = Asc(Diacritic)
        Else
          Diacritic = AscW(Diacritic)
        End If
      End If
      LeftOfCode = Left(Codes, InStr(Codes, "/" & Diacritic & "/"))
      Diacritic2Char = Mid(Letters, Len(LeftOfCode) - Len(Replace(LeftOfCode, "/", "")), 1)
    End Function
    Last edited by Rick Rothstein; Apr 21st, 2014 at 09:15 PM.
    Rick's "mini" blog... http://www.excelfox.com/forum/f22/
    .
    Want to post a small screen shot? See Part B here.

  7. #17
    MrExcel MVP Rick Rothstein's Avatar
    Join Date
    Apr 2011
    Location
    New Jersey, USA
    Posts
    34,748
    Post Thanks / Like
    Mentioned
    88 Post(s)
    Tagged
    31 Thread(s)

    Default Re: Convert Symbols to letters

    Quote Originally Posted by Rick Rothstein View Post
    I applaud you for your perseverance in compiling that list! However, you missed one that I see.... ASCII 138 (Š)

    Here is the function I posted above (works the same... the argument can be either the ASCII/ANSI code number of the diacritical character or the diacritical character itself), modified for your new list, plus I included the missing ASCII 138 (Š) character as well...

    Code:
    Function Diacritic2Char(Diacritic As Variant) As String
      Dim Codes As String, Letters As String, LeftOfCode As String
      Const NormalChars As String = " !""#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdef" & _
                                    "ghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ­" & _
                                    ""
      Codes = "/224/225/226/227/228/229/257/259/261/462/479/481/507/513/515/551/7681/7834/7841/7843/7845" & _
              "/7847/7849/7851/7853/7855/7857/7859/7861/7863/192/193/194/195/196/197/256/258/260/461/478/480" & _
              "/506/512/514/550/570/7680/7840/7842/7844/7846/7848/7850/7852/7854/7856/7858/7860/7862/384/387/7683" & _
              "/7685/7687/385/386/579/7682/7684/7686/231/263/265/267/269/392/572/7689/199/262/264/266/268" & _
              "/391/571/7688/271/273/396/545/7691/7693/7695/7697/7699/270/272/394/395/453/498/7690/7692/7694" & _
              "/7696/7698/232/233/234/235/275/277/279/281/283/517/519/553/583/7701/7703/7705/7707/7709/7865" & _
              "/7867/7869/7871/7873/7875/7877/7879/200/201/202/203/274/276/278/280/282/516/518/552/582/7700" & _
              "/7702/7704/7706/7708/7864/7866/7868/7870/7872/7874/7876/7878/402/7711/401/7710/285/287/289/291/485" & _
              "/487/501/7713/284/286/288/290/403/484/486/500/7712/293/295/543/7715/7717/7719/7721/7723/7830" & _
              "/292/294/542/7714/7716/7718/7720/7722/236/237/238/239/297/299/301/303/464/521/523/7725/7727"
      Codes = Codes & "/7881/7883/204/205/206/207/296/298/300/302/304/407/463/520/522/7724/7726/7880/7882/309/496" & _
              "/585/308/584/311/409/489/7729/7731/7733/310/408/488/7728/7730/7732/314/316/318/320/322/410" & _
              "/564/7735/7737/7739/7741/313/315/317/319/321/456/573/7734/7736/7738/7740/7743/7745/7747/7742/7744" & _
              "/7746/241/324/326/328/329/414/505/565/7749/7751/7753/7755/209/323/325/327/413/504/544/7748" & _
              "/7750/7752/7754/242/243/244/245/246/248/333/335/337/417/466/491/493/511/525/527/555/557" & _
              "/559/561/7757/7759/7761/7763/7885/7887/7889/7891/7893/7895/7897/7899/7901/7903/7905/7907/210/211/212" & _
              "/213/214/216/332/334/336/415/416/465/490/492/510/524/526/554/556/558/560/7756/7758/7760" & _
              "/7762/7884/7886/7888/7890/7892/7894/7896/7898/7900/7902/7904/7906/421/7765/7767/420/7764/7766/587/586" & _
              "/341/343/345/529/531/589/7769/7771/7773/7775/340/342/344/528/530/588/7768/7770/7772/7774/347" & _
              "/349/351/353/537/575/7777/7779/7781/7783/7785/138/346/348/350/352/536/7776/7778/7780/7782/7784/355" & _
              "/357/359/427/429/539/566/7787/7789/7791/7793/7831/354/356/358/428/430/538/574/7786/7788/7790" & _
              "/7792/249/250/251/252/361/363/365/367/369/371/432/468/470/472/474/476/533/535/7795/7797" & _
              "/7799/7801/7803/7909/7911/7913/7915/7917/7919/7921/217/218/219/220/360/362/364/366/368/370/431" & _
              "/467/469/471/473/475/532/534/580/7794/7796/7798/7800/7802/7908/7910/7912/7914/7916/7918/7920/7805" & _
              "/7807/434/7804/7806/373/7809/7811/7813/7815/7817/7832/372/7808/7810/7812/7814/7816/7819/7821/7818/7820" & _
              "/253/255/375/436/563/591/7823/7833/7923/7925/7927/7929/221/374/376/435/562/590/7822/7922/7924" & _
              "/7926/7928/378/380/382/438/549/576/7825/7827/7829/377/379/381/437/548/7824/7826/7828/"
      Letters = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbbbbbBBBBBBccccccccCCCCCCCC" & _
                "dddddddddDDDDddDDDDDeeeeeeeeeeeeeeeeeeeeeeeeeeEEEEEEEEEEEEEEEEEEEEEEEEEEffFFgggggggg" & _
                "GGGGGGGGGhhhhhhhhhHHHHHHHHiiiiiiiiiiiiiiiIIIIIIIIIIIIIIIIIjjjJJkkkkkkKKKKKKlllllllllll" & _
                "LLLLLlLLLLLmmmMMMnnnnnnnnnnnnNNNNNNNNNNNooooooooooooooooooooooooooooooooooooOOOOOOOOOOO" & _
                "OOOOOOOOOOOOOOOOOOOOOOOOOOpppPPPqQrrrrrrrrrrRRRRRRRRRRsssssssssssSSSSSSSSSSStttttttttttt" & _
                "TTTTTTTTTTTuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUvvVVVwwwwwww" & _
                "WWWWWWxxXXyyyyyyyyyyyyYYYYYYYYYYYzzzzzzzzzZZZZZZZZ"
      If Diacritic Like "*[!0-9]*" Then
        If InStr(NormalChars, Diacritic) Then
          Diacritic = Asc(Diacritic)
        Else
          Diacritic = AscW(Diacritic)
        End If
      End If
      LeftOfCode = Left(Codes, InStr(Codes, "/" & Diacritic & "/"))
      Diacritic2Char = Mid(Letters, Len(LeftOfCode) - Len(Replace(LeftOfCode, "/", "")), 1)
    End Function
    Actually, the following function should be faster overall, when called more than one time (because the Codes and Letters variables are only assigned once per open workbook and then remain in memory for as long as that workbook is open rather than reassigning them over-and-over again with each call to the function).

    Code:
    Function Diacritic2Char(Diacritic As Variant) As String
      Dim LeftOfCode As String
      Static Codes As String, Letters As String
      Const NormalChars As String = " !""#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdef" & _
                                    "ghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ­" & _
                                    ""
      If Len(Codes) = 0 Then
        Codes = "/224/225/226/227/228/229/257/259/261/462/479/481/507/513/515/551/7681/7834/7841" & _
                "/7843/7845/7847/7849/7851/7853/7855/7857/7859/7861/7863/192/193/194/195/196/197/256/258/260/461/478" & _
                "/480/506/512/514/550/570/7680/7840/7842/7844/7846/7848/7850/7852/7854/7856/7858/7860/7862/384/387" & _
                "/7683/7685/7687/385/386/579/7682/7684/7686/231/263/265/267/269/392/572/7689/199/262/264/266/268" & _
                "/391/571/7688/271/273/396/545/7691/7693/7695/7697/7699/270/272/394/395/453/498/7690/7692/7694" & _
                "/7696/7698/232/233/234/235/275/277/279/281/283/517/519/553/583/7701/7703/7705/7707/7709/7865" & _
                "/7867/7869/7871/7873/7875/7877/7879/200/201/202/203/274/276/278/280/282/516/518/552/582/7700" & _
                "/7702/7704/7706/7708/7864/7866/7868/7870/7872/7874/7876/7878/402/7711/401/7710/285/287/289/291/485" & _
                "/487/501/7713/284/286/288/290/403/484/486/500/7712/293/295/543/7715/7717/7719/7721/7723/7830" & _
                "/292/294/542/7714/7716/7718/7720/7722/236/237/238/239/297/299/301/303/464/521/523/7725/7727"
        Codes = Codes & "/7881/7883/204/205/206/207/296/298/300/302/304/407/463/520/522/7724/7726/7880/7882/309/496" & _
                "/585/308/584/311/409/489/7729/7731/7733/310/408/488/7728/7730/7732/314/316/318/320/322/410" & _
                "/564/7735/7737/7739/7741/313/315/317/319/321/456/573/7734/7736/7738/7740/7743/7745/7747/7742/7744" & _
                "/7746/241/324/326/328/329/414/505/565/7749/7751/7753/7755/209/323/325/327/413/504/544/7748" & _
                "/7750/7752/7754/242/243/244/245/246/248/333/335/337/417/466/491/493/511/525/527/555/557" & _
                "/559/561/7757/7759/7761/7763/7885/7887/7889/7891/7893/7895/7897/7899/7901/7903/7905/7907/210/211/212" & _
                "/213/214/216/332/334/336/415/416/465/490/492/510/524/526/554/556/558/560/7756/7758/7760" & _
                "/7762/7884/7886/7888/7890/7892/7894/7896/7898/7900/7902/7904/7906/421/7765/7767/420/7764/7766/587/586" & _
                "/341/343/345/529/531/589/7769/7771/7773/7775/340/342/344/528/530/588/7768/7770/7772/7774/347" & _
                "/349/351/353/537/575/7777/7779/7781/7783/7785/138/346/348/350/352/536/7776/7778/7780/7782/7784/355" & _
                "/357/359/427/429/539/566/7787/7789/7791/7793/7831/354/356/358/428/430/538/574/7786/7788/7790" & _
                "/7792/249/250/251/252/361/363/365/367/369/371/432/468/470/472/474/476/533/535/7795/7797" & _
                "/7799/7801/7803/7909/7911/7913/7915/7917/7919/7921/217/218/219/220/360/362/364/366/368/370/431" & _
                "/467/469/471/473/475/532/534/580/7794/7796/7798/7800/7802/7908/7910/7912/7914/7916/7918/7920/7805" & _
                "/7807/434/7804/7806/373/7809/7811/7813/7815/7817/7832/372/7808/7810/7812/7814/7816/7819/7821/7818/7820" & _
                "/253/255/375/436/563/591/7823/7833/7923/7925/7927/7929/221/374/376/435/562/590/7822/7922/7924" & _
                "/7926/7928/378/380/382/438/549/576/7825/7827/7829/377/379/381/437/548/7824/7826/7828/"
        Letters = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbbbbbBBBBBBccccccccCCCCCCCC" & _
                  "dddddddddDDDDddDDDDDeeeeeeeeeeeeeeeeeeeeeeeeeeEEEEEEEEEEEEEEEEEEEEEEEEEEffFFgggggggg" & _
                  "GGGGGGGGGhhhhhhhhhHHHHHHHHiiiiiiiiiiiiiiiIIIIIIIIIIIIIIIIIjjjJJkkkkkkKKKKKKlllllllllll" & _
                  "LLLLLlLLLLLmmmMMMnnnnnnnnnnnnNNNNNNNNNNNooooooooooooooooooooooooooooooooooooOOOOOOOOOOO" & _
                  "OOOOOOOOOOOOOOOOOOOOOOOOOOpppPPPqQrrrrrrrrrrRRRRRRRRRRsssssssssssSSSSSSSSSSStttttttttttt" & _
                  "TTTTTTTTTTTuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUvvVVVwwwwwww" & _
                  "WWWWWWxxXXyyyyyyyyyyyyYYYYYYYYYYYzzzzzzzzzZZZZZZZZ"
      End If
      If Diacritic Like "*[!0-9]*" Then
        If InStr(NormalChars, Diacritic) Then
          Diacritic = Asc(Diacritic)
        Else
          Diacritic = AscW(Diacritic)
        End If
      End If
      LeftOfCode = Left(Codes, InStr(Codes, "/" & Diacritic & "/"))
      Diacritic2Char = Mid(Letters, Len(LeftOfCode) - Len(Replace(LeftOfCode, "/", "")), 1)
    End Function
    Rick's "mini" blog... http://www.excelfox.com/forum/f22/
    .
    Want to post a small screen shot? See Part B here.

  8. #18
    MrExcel MVP
    Join Date
    Apr 2006
    Posts
    19,644
    Post Thanks / Like
    Mentioned
    14 Post(s)
    Tagged
    2 Thread(s)

    Default Re: Convert Symbols to letters

    Quote Originally Posted by Rick Rothstein View Post
    ... I applaud you for your perseverance in compiling that list! However, you missed one that I see.... ASCII 138 (Š) ...
    Hi Rick

    No, I did not miss it, it's just that I'm using the Unicode code points and not the ascii/ansi codes.

    For this specific case you can easily confirm it:

    Code:
    MsgBox Chr(138) = ChrW(&H160)
    I've compiled this list because now and then there are posts where people ask for this conversion, usually for the characters in their language, and I thought it would be good to have a general purpose routine that performs the conversion for any language that uses Latin script.

    The way I did it was also in such a way that it can easily be used for documentations purposes, namely by posting the name of each code point.

    I'm glad you posted your code, that I'm sure will be faster and will come in handy for heavy or frequent need for this conversions.
    Last edited by pgc01; Apr 22nd, 2014 at 05:54 AM.
    Kind regards
    PGC

    To understand recursion, you must understand recursion.

  9. #19
    Board Regular
    Join Date
    Feb 2014
    Posts
    248
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Default Re: Convert Symbols to letters

    Hi guys, This is perfect! it is now working for everything except the 2 below. Which makes sense to me since I don't see them in the list! lol. Both of these show in VBA editor so I can add a replace all macro with it in there. but still awesome.
    ae
    x

  10. #20
    MrExcel MVP
    Join Date
    Apr 2006
    Posts
    19,644
    Post Thanks / Like
    Mentioned
    14 Post(s)
    Tagged
    2 Thread(s)

    Default Re: Convert Symbols to letters

    I'm glad it helped.

    Remark: you could add them to the lists but maybe it's better like this since they are of a different nature (it's not a case of removing diacritics). Anyway, I'm glad it's solved.
    Kind regards
    PGC

    To understand recursion, you must understand recursion.

Some videos you may like

User Tag List

Like this thread? Share it with others

Like this thread? Share it with others

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •