Ответ
 
Опции вопроса Поиск в этом вопросе Опции просмотра
  #1  
Старый 29.09.2011, 23:47
Аватар для Guest
Guest
Вопрос
Сообщений: n/a
По умолчанию

Я сконструировал маленький макрос, который транслитерирует латиницу в кириллицу.Код:Sub Translit() Dim oDoc As Object Dim oSearch As Object, nTimes As Long Latin = Array("a","b", "v", "g", "d", "e", "yo", "zh", "z", "i", "j", "k", "l", "m",_ "n", "p", "r", "s", "t", "u", "f", "h", "c", "ch", "sh", "sj", "y", "'", "eh", "yu", "ya") Cyrillic = Array("а", "б", "в", "г", "д", "е", "ё", "ж", "з", "и", "й", "к", "л", "м",_ "н", "п", "р", "с", "т", "у", "ф", "х", "ц", "ч", "ш", "щ", "ы", "ь", "э", "ю", "я") oDoc = ThisComponent oSearch = oDoc.createReplaceDescriptor For I = lBound(Latin()) to uBound(Latin()) with oSearch .SearchString = Latin(I) .ReplaceString = Cyrillic(I) .SearchWords = false end with nTimes = oDoc.replaceAll(oSearch) Next I MsgBox ("All done!") End SubКак вы наверное догадались, макрос работает только наполовину. Проблема с "двухбуквенными" комбинациями, например, "sh" -> "ш". Вместо "ш" макрос пишет "сх". Как решить проблему? Наверное можно использовать regular expressions, да я в них не силен.Спасибо!С уважением,Дмитрий
Ответить с цитированием
Ответ



Похожие вопросы
Тема Автор Раздел Ответов Последний вопрос или ответ
вопрос по транслитерации Guest Продолжение старого архива 0 16.10.2011 14:52
И снова о MS-макрос --> OO-макрос Guest Новый архив 3 0 30.09.2011 00:14
Необходимо подменить макрос в открываемом файле ms excel на макрос для OO Guest Архив вопросов и ответов 0 29.09.2011 23:37
Подскажите плагин транслитерации Guest Продолжение нового архива 0 29.09.2011 04:45



© www.otvetnemail.ru - Форум вопросов и ответов.