Внимание: акция!
Только 31 декабря и 1 января — скидка на все надстройки 50% при оплате через СБП
(оплачиваете половину от стоимости, указанной на странице приобретения лицензии)
|
Макросы для Excel. Парсинг сайтов. Программист Excel. Надстройки для Excel, и макросы VBA под заказ. |
|
|
Только 31 декабря и 1 января — скидка на все надстройки 50% при оплате через СБП
На некоторых компьютерах русские символы на формах и в сообщениях надстройки нечитаемы:
В новых версиях надстроек (с сентября 2024) проблема практически не будет проявляться, но полностью корректная работа надстроек при неверно заданной кодировке не всегда возможна. Причина проблемы с кракозябрами (нечитаемым текстом) при использовании макросов:Макросы в Microsoft Excel появились очень давно, ещё в 1993 году. В те времена Excel (версии 5.0) распространялся на 10 дискетах (и весил 14 МБ), был 16-битным, и вообще сильно отличался от привычных нам современных версий Excel. Но реализованный в те далекие времена функционал макросов почти не менялся с 1995 года ввиду желания Microsoft обеспечить обратную совместимость, и из-за нежелания развивать VBA как язык программирования. Именно с тех времён макросы унаследовали частичную поддержку Unicode (которая необходима для отображения символов разных алфавитов), и проблему эту Microsoft решать не планирует. В самих документах Office (на листах Excel и в документах Word) поддержка Unicode реализована давным-давно и в полной мере (иначе мы не могли бы нормально пользоваться офисными программами), а вот в макросах русские буквы использовать нежелательно, что сильно усложняет код. Мои надстройки разрабатывались в 2012-2015 годах, тогда у меня ещё не было опыта эксплуатации макросов на тысячах различных компьютеров, и я использовал кириллицу в коде. Код вроде MsgBox "Ошибка" корректно выведет сообщение с текстом «Ошибка» на 9 из 10 компьютеров, где установлена русскоязычная Windows. Но на компьютерах, где Windows изначально англоязычная, и лишь потом установлен пакет русификации, в настройках системы может быть прописана другая кодировка для программ, не поддерживающих Unicode (нужна кодировка 1251 - кириллица), — в этом случае вместо русских букв на формах VBA и в сообщениях отображаются кракозябры, как на скриншоте выше. Есть 2 решения этой проблемы (которая встречается на 10% компьютеров):
В новых версиях надстроек исправить проблему несложно:Нажмите кнопку О ПРОГРАММЕ и перейдите на вкладку ОПЦИИ Если там присутствует красная кнопка Сведения о проблеме с кодировкой — нажмите её:
В появившемся окне будет написано, что сделать дальше:
В старых версиях надстроек (выпущенных до сентября 2024 года), проблема решается запуском файла из этой инструкции.
|
||||
Комментарии
Отправить комментарий