Как найти слово с en da sh внутри него? - PullRequest
0 голосов
/ 15 февраля 2020

Мне нужно найти и выделить все сочетания слов с помощью en da sh в нем в документе MS Word. Например, в предложении: «В 1993–1996 годах экономическая ситуация была сложной». макрос должен завершиться с выделением «1993–1996».

Я пытался использовать несколько текстовых комбинаций с подстановочными знаками, но это не удалось.

Sub DSFinder()

Dim r As Range

'highlights incorrect'
Set r = ActiveDocument.Range
With r.Find
.MatchWildcards = True
.Text = "*(^0150)*"
Do While .Execute(Forward:=True) = True
r.HighlightColorIndex = wdPink
Loop
End With

End Sub

1 Ответ

0 голосов
/ 15 февраля 2020

Используйте подстановочный знак Найти с помощью:

.Text = "<[! ]@^=*>"

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

Sub DSFinder()
Application.ScreenUpdating = False
Dim iDx As Long
iDx = Options.DefaultHighlightColorIndex
Options.DefaultHighlightColorIndex = wdPink
With ActiveDocument.Range.Find
  .MatchWildcards = True
  .Text = "<[! ]@^=*>"
  .Replacement.Text = "^&"
  .Replacement.Highlight = True
  .Execute Replace:=wdReplaceAll
End With
Options.DefaultHighlightColorIndex = iDx
Application.ScreenUpdating = True
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...