#regex #vba #ms-word
#регулярное выражение #vba #ms-word
Вопрос:
Я попытался следующим образом заменить все текстовое содержимое в текущем открытом документе числовым нулем, но это не сработало
Set objWdDoc = Word.Application.ActiveDocument
Set objWdRange = objWdDoc.Content
Dim re As New RegExp
re.Global = True
re.Pattern = "[a-z]"
re.IgnoreCase = True
objWdRange = re.Replace(objWdRange, "0")
Кто-нибудь может предложить рабочий метод?
Ответ №1:
Предполагая, что вы ссылались на регулярные выражения Microsoft vbscript
objWdRange.Text = re.Replace(objWdRange, "0")
Будет работать, хотя вы, конечно, потеряете любое форматирование.
Вы также можете использовать встроенный поиск / замену, который имеет ограниченную поддержку, для поиска цифр / символов. Запишите макрос, в котором вы это делаете, и сможете изучить код.