LanaR
Member
- Local time
- Tomorrow, 06:21
- Joined
- May 20, 2021
- Messages
- 113
If you have imported data that has originated in a non-English-speaking country, you will find that words containing accented characters might not get picked up in searches or that filters fail. This function can be used to search a string and replace such characters with standard Latin characters.
Code:
Function FindRem(FldName As String) As Variant
'Define various variables that will be required for this process
Dim k As Integer 'variable to be used as counters
Dim OrgStr, LetterCheck, NewStr As String 'String variables for manipulation of string to be searched
OrgStr = FldName 'Set string to search
For k = 1 To Len(OrgStr) 'Cycle through characters in string and check for accented characters
LetterCheck = Mid(OrgStr, k, 1)
Select Case Asc(LetterCheck)
Case 131 '"ƒ"
LetterCheck = "f"
Case 138 '"Š"
LetterCheck = "S"
Case 154 '"š"
LetterCheck = "s"
Case 140 '"Œ"
LetterCheck = "OE"
Case 156 '"œ"
LetterCheck = "oe"
Case 142 '"Ž"
LetterCheck = "Z"
Case 158 '"ž"
LetterCheck = "z"
Case 159 '"Ÿ"
LetterCheck = "y"
Case 192 To 197 '"À, Á, Â, Ã, Ä, Å"
LetterCheck = "A"
Case 224 To 229 '"lowercase version of the above"
LetterCheck = "a"
Case 198 '"Æ"
LetterCheck = "AE"
Case 230 '"æ"
LetterCheck = "ae"
Case 199 '"Ç"
LetterCheck = "C"
Case 231 '"ç"
LetterCheck = "c"
Case 200 To 203 '"È, É, Ê, Ë"
LetterCheck = "E"
Case 232 To 235 '"lowercase version of the above"
LetterCheck = "e"
Case 204 To 207 '"Ì, Í, Î, Ï"
LetterCheck = "I"
Case 236 To 239 '"lowercase version of the above"
LetterCheck = "i"
Case 208 '"Ð"
LetterCheck = "ETH"
Case 240 '"ð"
LetterCheck = "eth"
Case 209 '"Ñ"
LetterCheck = "N"
Case 241 '"ñ"
LetterCheck = "n"
Case 210 To 214, 216 '"Ò, Ó, Ô, Õ, Ö, Ø"
LetterCheck = "O"
Case 242 To 246, 248 '"lowercase version of the above"
LetterCheck = "o"
Case 217 To 220 '"Ù, Ú, Û, Ü"
LetterCheck = "U"
Case 249 To 252 '"lowercase version of the above"
LetterCheck = "u"
Case 221 '"Ý"
LetterCheck = "Y"
Case 253 '"ý"
LetterCheck = "y"
Case 222 '"Þ"
LetterCheck = "TH"
Case 254 '"þ"
LetterCheck = "th"
Case 223 '"ß"
LetterCheck = "ss"
Case 255 '"ÿ"
LetterCheck = "y"
Case Else
LetterCheck = LetterCheck
End Select
'Create hew string from stripped charcters
NewStr = NewStr & LetterCheck
Next
'set return value
FindRem = NewStr
End Function