Посмотрите, если , это дает вам начало автоматизации слова с использованием python.
Как только вы откроете документ, вы можете сделать следующее.
После следующего кода вы можете закрыть документ и открыть другой.
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "test"
.Replacement.Text = "test2"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchKashida = False
.MatchDiacritics = False
.MatchAlefHamza = False
.MatchControl = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
Приведенный выше код заменяет текст «test» на «test2» и выполняет «замену всех».
Вы можете включить / выключить другие параметры в зависимости от того, что вам нужно.
Простой способ узнать это - создать макрос с действиями, которые вы хотите выполнить, посмотреть сгенерированный код и использовать его в своем собственном примере (с / без измененных параметров).
РЕДАКТИРОВАТЬ: После просмотра кода Мэтью, вы могли бы сделать следующее
MSWord.Documents.Open(filename)
Selection = MSWord.Selection
А затем перевести приведенный выше код VB на Python.
Примечание. Следующий код VB - это сокращенный способ назначения свойства без использования длинного синтаксиса.
(VB)
With Selection.Find
.Text = "test"
.Replacement.Text = "test2"
End With
Python
find = Selection.Find
find.Text = "test"
find.Replacement.Text = "test2"
Простите за знание Python. Но я надеюсь, что у вас есть идея двигаться вперед.
Не забудьте выполнить операцию сохранения и закрытия документа после выполнения операции поиска / замены.
В конце концов, вы можете вызвать MSWord.Quit
(чтобы освободить объект Word из памяти).