Хилари отмечает, что большинство документов, которые использует их компания, стандартизированы на шрифте Times Roman. Однако время от времени кто-то редактирует документ и применяет другой шрифт к тексту, который в нем содержится. Она хотела бы легко найти эти «аномалии форматирования». Хилари задается вопросом, есть ли способ найти в документе текст, в котором не используется определенный шрифт.

Есть несколько способов найти то, что вам нужно, и, возможно, решить проблему. Во-первых, вы можете использовать функцию «Найти и заменить» следующим образом:

  1. Нажмите Ctrl + F. Word отображает вкладку «Найти» диалогового окна «Найти и заменить».

  2. Нажмите кнопку «Еще», если она доступна.

  3. Убедитесь, что поле «Найти» пусто.

  4. Щелкните Формат, а затем выберите Шрифт. Word отображает диалоговое окно «Найти шрифт». (См. Рис. 1.)

  5. Используйте элементы управления в диалоговом окне, чтобы указать, что вы хотите найти шрифт Times Roman, который вы используете. (Просто выберите шрифт. Вам не нужно указывать другие настройки, если вы этого не хотите.)

  6. Щелкните ОК. Спецификации шрифтов, которые вы ищете, отображаются сразу под полем «Найти».

  7. Установите флажок Выделить все элементы.

  8. Щелкните «Найти все».

На этом этапе диалоговое окно закрывается, и Word послушно выделяет все экземпляры Times Roman в вашем документе. Вы можете легко пролистать документ, чтобы увидеть, что не выделено — это те «аномалии», которые вы ищете.

Вы также можете использовать «Найти» и «Заменить», чтобы применить необычное форматирование к тексту, который не набран шрифтом Times Roman. Просто определите форматирование, которое вы не используете в документе, например, двойное подчеркивание или красный текст. Выделите весь документ (Ctrl + A) и примените это форматирование ко всему документу. Затем используйте команду «Найти и заменить», чтобы найти все экземпляры Times Roman (см. Шаги выше) и заменить их на Times Roman без выделенного форматирования, которое вы ранее применили. В итоге вы получаете только текст, который не является шрифтом Times Roman с выделенным форматированием.

При желании вы можете использовать макрос для изменения шрифта, используемого в документе. Ниже приводится небольшой небольшой макрос, который проверяет шрифт, используемый для каждого слова в вашем документе:

Sub FixFormatAnomalies()

Dim aWord

For Each aWord In ActiveDocument.Words         If aWord.Font.Name <> "Times Roman" Then             aWord.Font.Name = "Times Roman"

End If     Next aWord End Sub

Если шрифт, используемый для слова, не соответствует тому, что вы хотите, процедура изменяет шрифт. Единственное, что вам нужно сделать, чтобы макрос работал в вашем случае, — это изменить желаемое имя шрифта на двух строках.

(Вы захотите использовать имя шрифта точно так, как оно отображается в списке шрифтов, используемых Word. Обратите особое внимание на использование заглавных букв.)

Другой подход — просто проверить каждый символ в документе и выделить символ, если он не использует желаемый шрифт. Следующий макрос выделяет нежелательные символы желтым цветом:

Sub HighlightOtherFonts()

Dim iCounter As Integer     Dim sFontName As String     Dim sPrompt As String     Dim sTitle As String     Dim sDefault As String     Dim c As Range

' Gets the name of the font as typed by the user     sPrompt = "Type the name of the font that is OK to "

sPrompt = sPrompt & "have in the document."

sTitle = "Acceptable Font Name"

sDefault = ActiveDocument.Styles(wdStyleNormal).Font.Name     sFontName = InputBox(sPrompt, sTitle, sDefault)



' Verifies that the name of the font is valid     For Each sFont In Application.FontNames         If UCase(sFontName) = UCase(sFont) Then             ' Changes the user-typed name of the font to             ' the version recognized by the application             ' Example: 'times new roman' (user-typed) is             ' changed to 'Times New Roman' (application version)

sFontName = sFont             Exit For         Else             ' Terminates the loop if the name of the font is invalid             iCounter = iCounter + 1             If iCounter = FontNames.Count Then                 sPrompt = "The font name as typed does not match "

sPrompt = sPrompt & "any fonts available to the "

sPrompt = sPrompt & "application."

sTitle = "Font Name Not Found"

MsgBox sPrompt, vbOKOnly, sTitle                 Exit Sub             End If         End If     Next sFont

' Checks each character in the document, highlighting     ' if the character's font doesn't match the OK font     For Each c In ActiveDocument.Characters         If c.Font.Name <> sFontName Then             ' Highlight the selected range of text in yellow             c.FormattedText.HighlightColorIndex = wdYellow         End If     Next c End Sub

Одна из приятных особенностей этого макроса заключается в том, что он предлагает вам выбрать шрифт, который вы сочтете приемлемым. Затем он проверяет, соответствует ли введенное вами значение одному из шрифтов, доступных в системе. Поскольку макрос проверяет каждый символ в документе индивидуально, вам может потребоваться набраться терпения, пока он выполняется. Чем длиннее документ, тем больше времени требуется макросу для завершения своей работы.

Если вы просто хотите найти следующее вхождение изменения шрифта, тогда вам пригодится следующий очень короткий макрос:

Sub FindDifferentFont()

Selection.SelectCurrentFont   Selection.Collapse wdCollapseEnd End sub

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

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

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

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

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

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

link: / wordribbon-Finding_Text_Not_Using_a_Particular_Font [Поиск текста, не использующего определенный шрифт].