Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Сегодняшний пост поможет вам справиться с некорректным определением языка при проверке орфографии.
Помочь убрать разноцветные подчеркивания решил Владимир Проворов, который и поделился с нами этим постом и финальной версией скрипта. Для исторической справедливости необходимо принести благодарность неизвестному автору скрипта, и Алексею Мурзову, который адаптировал скрипт для новых версий Word. :-)
Одной из наболевших проблем офиса является несовпадение языка текста с фактическим. Появляются такие ошибки при копировании фрагментов текста из разных источников. При некорректно выставленном языке модуль проверки орфографии выделяет подобные слова.

В случае отдельного слова, достаточно просто поменять язык на нужный.

Если весь документ написан на одном языке, то тоже не составляет труда выделить весь текст и назначить нужный язык. Но что делать, если в большом русскоязычном документе встречается много англоязычных терминов? Выход один - писать скрипт.
Прежде всего, добавим панель разработчика в Word. Выбираем кнопку Настройка ленту.
Отмечаем вкладку Разработчик.

Создадим новый макрос в шаблоне Normal.dotm.


Вставляем процедуру и задаём модулю осмысленное имя. Сам скрипт имеет длинную историю и кочует из рук в руки, понемногу дорабатываясь. Изначально он был опубликован в одном из выпусков журнала Мир ПК, ещё в прошлом тысячелетии. Позже был переработан Алексеем Мурзовым для корректной работы в новых версиях Word. Идея скрипта максимально проста. Если слово состоит из латинских букв, то мы считаем его английским. Если из русских – русским. Сам код скрипта будет ниже.

Теперь создадим кнопку для быстрого запуска макроса.

Добавляем созданный нами макрос и нажимаем кнопку «Изменить», чтобы выбрать иконку и подпись для новой кнопки.


В результате в панели быстрого запуска появилась кнопка, запускающая макрос для исправления языка.
Проверяем работу новой кнопки.

Наш а тестовая фраза теперь полностью на русском языке и проходит проверку орфографии.

В приложенном файле вы найдете текст скрипта
Comments
Anonymous
January 01, 2003
Дмитрий Степанов, скрипт работает на Word 2003/2007/2010.Anonymous
January 01, 2003
Виталий, с украинским языком ситуация сложнее, и автоматически рассортировать слова в тексте, содержащим русские и украинские термины, скорее всего не получится. Если задача стоит в том, что надо на одном компьютере редактировать русско-английские и украино-английские документы, то можно доделать к скрипту запрос у пользователя языка для кириллических букв в начале работы скрипта. Если же задача разбирать русско-украинские тексты, то, боюсь, автоматически эту задачу не решить.Anonymous
January 01, 2003
Занятный "костыль"...А почему бы разработчикам не реализовать это внути самого Word?Anonymous
January 01, 2003
По поводу украинского - вопрос поняли, действительно сложно. Если что-нибудь придумаем - отпишусьAnonymous
January 01, 2003
dukedizel, к сожалению, задача различения английского и венгерского встречается с той же проблемой, что и различение русского и украинского. Если есть предложения как можно надёжно отличить слово на одном языке от другого при общих алфавитах, это очень поможет.Anonymous
January 01, 2003
Алексей, Строго говоря, потому что это именно костыль, и русскоязычным пользователям повезло, что наш язык сравнительно легко можно отличить от английского. Для других пар языков (английский-немецкий или русский-украинский) общего решения не получится.Anonymous
January 01, 2003
Myron, Developer.Anonymous
March 10, 2011
Спасибо за скрипт и детальные инструкции по установке. К сожалению у меня (боюсь, что не только) основная проблема с определением русского/украинского языков, а они оба состоят из "русских" (точнее кириллических) букв. Есть ли какая-то возможность корректного определения языка в таком случае?Anonymous
March 10, 2011
Согласен, т.к. очень часто стыкаюсь с этой проблемой. Было бы очень кстатиAnonymous
March 15, 2011
а как обстоят дела с 3 языками? русский, английский, венгерский? Как то можно добавить?Anonymous
March 16, 2011
Подскажите, а сие полезное решение может портироваться на Microsoft Office 2003Anonymous
March 16, 2011
В случае с определением русского/украинского языков, видимо, целесообразно писать два скрипта для текстов с преобладанием того или иного языка. Например, если в тексте большинство слов русских, то по умолчании считаем все слова русскими и ищем в тексте слова с уникальными украинскими буквами. Их будем считать украинскими. Такой алгоритм не отделит 100% украинских слов от русских, но позволит свести проблемы с определением языка к минимуму.Anonymous
March 16, 2011
Спасибо за ответ. Действительно сложно различить русско-украинские тексты (особенно учитывая, что есть достаточно слов, которые пишутся одинаково и только из контекста понятен язык).Anonymous
March 17, 2011
Можете подсказать эквивалент "вкладка Разработчик" в англ версии ворда?Anonymous
August 20, 2015
Спасибо большое! Я столько мучилась!Anonymous
June 12, 2017
Могли бы выложить скрипт ещё! При скачивании ошибка, что нет файла