перекодировать текст
svshipunov / 19.05.2015, 15:46
Форум:
Версия программы:
13.0.0.576
в некоторых файлах CDR непонятная кодировка...
например: Kaqsa ihovqon po osqaga$zfmt doqihonst
должно быть: Карта изохрон по отражающему горизонту
вручную составил (не до конца) таблицу для "перекодировки":
(там, где в верхней строке 9 -- не понятно пока... буквы такие не попадались...)
abcdef9ghijklmnopqrstuvwxyz9|}9$%ABCDEF9GHIJKLMNOPQRSTUVWXYZ999999
абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ
нужен макрос...
для выделенного текстового объекта поменять символы в соответствии с таблицей...
помогите, пожалуйста... спасибо...
вот вам простенький макрос для этого. Выберите текстовый объект и активируйте макрос. Таблицы в теле макроса можно дополнять и изменять, главное, чтобы они обе содержали одинаковое количество символов.
Sub TextCharSet() Dim s As Shape, sl%, ts$, i% Const sTable = "abcdef9ghijklmnopqrstuvwxyz9|}9$%ABCDEF9GHIJKLMNOPQRSTUVWXYZ999999" Const oTable = "абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ" Set s = ActiveShape: If s Is Nothing Then MsgBox "Выберите текст!", vbCritical: Exit Sub ts = s.Text.Story.Text For sl = 1 To Len(ts) i = InStr(sTable, Mid(ts, sl, 1)) If i > 0 Then Mid(ts, sl, 1) = Mid(oTable, i, 1) Next s.Text.Story.Text = ts End Subспасибо... есть добрые умеющие люди... я знал... ;-)