Function LoaiDauTV(ByVal Text As String) As String
Dim Charcode(), ResTxt(), I As Long, Tmp As String
Tmp = Text
Charcode = Array(224, 225, 226, 227, 259, 7841, 7843, 7845, 7847, 7849, 7851, 7853, 7855, 7857, 7859, 7861, _
7863, 273, 232, 233, 234, 7865, 7867, 7869, 7871, 7873, 7875, 7877, 7879, 236, 237, 297, 7881, 7883, 242, _
243, 244, 245, 417, 7885, 7887, 7889, 7891, 7893, 7895, 7897, 7899, 7901, 7903, 7905, 7907, 249, 250, _
361, 432, 7909, 7911, 7913, 7915, 7917, 7919, 7921, 253, 7923, 7925, 7927, 7929)
ResTxt = Array("a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", _
"F", "e", "e", "e", "e", "e", "e", "e", "e", "e", "e", "e", "i", "i", "i", "i", "i", "o", "o", _
"o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "o", "u", "u", "u", "u", "u", _
"u", "u", "u", "u", "u", "u", "y", "y", "y", "y", "y") 'd'
For I = 0 To UBound(Charcode)
Tmp = Replace(Tmp, ChrW(Charcode(I)), ResTxt(I))
Tmp = Replace(Tmp, UCase(ChrW(Charcode(I))), UCase(ResTxt(I)))
Next
LoaiDauTV = Tmp
End Function