Хочется понять каким образом в функции UCase определяется что изменяемый символ является буквой и следовательно можно найти ее вариант в верхнем регистре?
Надо это для написания собственной функции подобной UCase. Но фигня в том что надо знать коды символов которые имеют свои двойники в другом регистре, т.е. для английского алфавита A = 65, a = 97, и определив, что если символ у нас находится в диапазоне от 97 до 122, можно получить его аналог в верхнем регистре отняв от значения число 32. Но как быть с другими языками? Как функция узнает что символ 224 это русская буква "а" и значит можно получить "А"?
Надеюсь понятно объяснил
На ум пока приходит следующее, определять это через instr(1,"a",chr(asc("a")-32),vbTextCompare)=1, но всегда ли разница между регистрами равна 32?