Текст документа содержит AB C (красным шрифтом)
Я хочу заменить AB C, иногда другим текстом, иногда текстом 'no' (ноль).
Вот мой код:
Set MYRANGE = Selection.Range
MYRANGE.WholeStory
MYRANGE.Find.Replacement.Font.Color = wdAuto
IsTrue = MYRANGE.Find.Execute(FindText:="ABC", replacewith:="XYZ", Format:=True, Replace:=wdReplaceAll, MatchCase:=True)
Конечная цель - заменить фактический текст 'replacewith' на 'black' (мой цвет wdauto), но, если replacewith = "", удалить его.
С указанным выше кодом и AB C (красным) в документе текст должным образом заменяется на XYZ (черный)
Но если replacewith: = "", замена завершится неудачно. «AB C» остается в документе.
Удалите «MYRANGE.Find.Replacement.Font.Color = wdAuto» и замена работает.
Или оставьте строку выше и:
If Format:=False, and Replacewith:="", then ABC disappears. Proper result.
If Format:=False, and replacewith:="XYZ", then ABC(red) changes to XYZ(red). (Bad result.)
Почему не работает нулевой запрос на замену? Что будет?