Марк ищет самый быстрый и эффективный способ — в макросе — определить, сколько раз конкретная текстовая строка встречается в документе. К сожалению, сделать это с помощью одной-двух простых команд невозможно; вместо этого вам нужно «пройтись по документу», используя функцию «Найти и заменить» Word.

Во-первых, сделайте временную копию документа, чтобы не испортить исходный документ. Затем используйте переменную в своем макросе, чтобы подсчитать, сколько раз желаемый текст был заменен, и увеличивайте переменную каждый раз, когда происходит замена. В следующем примере количество раз будет указано в переменной Replacements.

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

Sub CountReplacements     Dim Replacements As Integer

Replacements = 0     Selection.Find.ClearFormatting     Selection.Find.Replacement.ClearFormatting     With Selection.Find         .Text = InputBox("Enter the text you want to find:")

.Replacement.Text = InputBox("Enter the replacement text:")

.Forward = True         .Wrap = wdFindContinue         .Format = False         .Execute Replace:=wdReplaceOne

Do Until Not .Found             .Execute Replace:=wdReplaceOne             Replacements = Replacements + 1             Selection.MoveRight Unit:=wdCharacter, Count:=1         Loop

If Replacements <> 0 Then             MsgBox _               "" & .Text & " has been replaced " & _               CStr(Replacements) & " times with " & _               .Replacement.Text         Else             MsgBox .Text & " was not found in the document/selection."

End If     End With End Sub

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

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

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

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

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

link: / wordribbon-Occurrences_of_a_Text_String_within_a_Document [вхождения текстовой строки в документе].