Word содержит несколько разных способов настройки регистра выделенного текста. Один из способов — щелкнуть Формат | Изменить регистр для отображения диалогового окна «Изменить регистр». Word перечисляет различные способы корректировки регистра текста. Одно из наиболее распространенных изменений регистра — это регистр заголовка. Этот тип изменения приводит к тому, что каждое слово выделенного текста отображается в верхнем регистре, а остальные буквы — в нижнем регистре. Единственная проблема с этим состоит в том, что Word довольно неизбирательно использует заглавные буквы. Например, если вы выберете текст «это тест», а затем используете диалоговое окно «Изменить регистр», чтобы изменить текст на регистр заголовка, вы получите «Это тест». Однако общие правила использования заглавных букв диктуют, что «короткие» слова («есть» и «а») не должны быть заглавными.

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

Sub TitleCase()

Dim lclist As String     Dim wrd As Integer     Dim sTest As String

' list of lowercase words, surrounded by spaces     lclist = " of the by to this is from a "



Selection.Range.Case = wdTitleWord

For wrd = 2 To Selection.Range.Words.Count         sTest = Trim(Selection.Range.Words(wrd))

sTest = " " & LCase(sTest) & " "

If InStr(lclist, sTest) Then             Selection.Range.Words(wrd).Case = wdLowerCase         End If     Next wrd End Sub

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

Ключом к макросу является строка lclist. Эта строка содержит список слов, которые должны всегда отображаться в нижнем регистре. Эти слова окружены пробелами, включая первое и последнее слова строки.

Когда сравнение sTest выполнено, sTest содержит начальный и конечный пробелы, чтобы можно было сделать успешные сопоставления. (Пробелы включены, чтобы не было ошибок при сопоставлении слов, например, сопоставление «он» с частью «».)

Также обратите внимание, что сравнительная часть макроса не обращает внимания на первое слово в выделенном тексте. Предполагается, что это слово является первым словом фразы или предложения, которое всегда должно начинаться с символа верхнего регистра.

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

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

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

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

(Microsoft Word — самая популярная программа для обработки текстов в мире.) Этот совет (215) применим к Microsoft Word 97, 2000, 2002 и 2003. Вы можете найти версию этого совета для ленточного интерфейса Word (Word 2007 и позже) здесь:

link: / wordribbon-Intelligent_Title_Case [Интеллектуальный регистр заголовков].