Сарма часто проверяет грамматику (и читаемость) только части документа, и для этого он использует макрос. Было бы полезно, если бы макрос обходил диалоговое окно «Вы хотите проверить остаток?», Которое всегда отображается при проверке орфографии, но Сарма не знает, как это сделать.

Sarma ссылается на две разные вещи: проверку орфографии и проверку грамматики. Сарма хочет использовать средство проверки грамматики, но, очевидно, именно средство проверки орфографии отображает диалоговое окно, которого он хочет избежать.

Существует два типа диалоговых окон, к которым вы можете получить доступ с помощью макросов, когда дело касается проверки орфографии и грамматики. Одно — это комбинированное диалоговое окно (которое одновременно обрабатывает орфографию и грамматику), а другое — «отдельное» диалоговое окно, которое независимо занимается проверкой грамматики или орфографии. Диалоговые окна выглядят почти одинаково, но работают по-разному. Чтобы еще больше запутать ситуацию, заголовок диалогового окна — «Орфография и грамматика» даже для версий с одним действием.

Если щелкнуть инструмент «Орфография и грамматика» на вкладке «Рецензирование» ленты, Word откроет комбинированное диалоговое окно. Это диалоговое окно также можно открыть с помощью следующей макрос-команды:

Dialogs(wdDialogToolsSpellingAndGrammar).Show

Это диалоговое окно проверяет орфографию и грамматику. Когда будет достигнут конец выделенного текста, появится сообщение «Word завершил проверку выбора. Вы хотите продолжить проверку оставшейся части документа?»

Чтобы отобразить одноцелевое диалоговое окно для проверки грамматики, вы можете вместо этого использовать эту команду:

Selection.Range.CheckGrammar

Диалоговое окно очень похоже на диалоговое окно комбинированного назначения, но немного отличается в использовании. Поскольку проверка орфографии не выполняется, диалоговое окно «Проверить остаток» не будет отображаться после завершения проверки грамматики.

В качестве примера того, как эффективно проверять грамматику выделенного фрагмента, рассмотрим следующий макрос:

Sub CheckGrammarInSelection()

Dim aRange As Range

Set aRange = Selection.Range     aRange.GrammarChecked = False     ActiveDocument.ShowGrammaticalErrors = True     If Selection.Range.Characters.Count > 0 Then        Options.CheckGrammarWithSpelling = True        Selection.Range.CheckGrammar     End If     aRange.Select     aRange.GrammarChecked = False End Sub

Макрос начинается с проверки того, что все флажки «уже проверенные» для выбора сняты (через свойство GrammarChecked), а затем проверяет выбор.

_Примечание: _

Если вы хотите знать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах WordTips), я подготовил специальную страницу, содержащую полезную информацию.

link: / wordribbon-WordTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

WordTips — ваш источник экономичного обучения работе с Microsoft Word.

(Microsoft Word — самая популярная программа для обработки текстов в мире.) Этот совет (9950) относится к Microsoft Word 2007, 2010 и 2013.