Випуск масового пошуку та заміни - Microsoft Word 2013


0

Я намагаюся створити макрос для того, щоб зробити масовий пошук та заміну в декількох документах слова. Я знайшов цей у мережі та змінив його, щоб він також застосовувався до графіки, однак я постійно отримую помилку часу (5174), кажучи, що файл не вдалося знайти (хоча він, безумовно, знаходиться в папці).

Я вважаю, що проблема полягає в наступному: support.microsoft.com/en-us/kb/212664, але у мене виникають певні проблеми з його впровадженням у свій макрос, як просто додавання ".docx" після кожного Fname, здається, не працює.

Я маю обмежений досвід роботи з макросами, тому вибачте, якщо це питання початківця.

Будь-яка допомога буде дуже вдячна.

Дякую.

Sub ReplaceText()
Dim Directory As String
Dim FType As String
Dim FName As String

Directory = "C:\Users\pieria\Desktop\TempPics"
FType = "*.docx"

ChDir Directory
FName = Dir(FType)
' for each file you find, run this loop
Do While FName <> ""
' open the file
Documents.Open FileName:=FName  '<--Error is supposedly here 

' search and replace the company name
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
    .Text = "CompanyA"
    .MatchCase = True
    .Replacement.Text = "CompanyB"
End With
Selection.Find.Execute Replace:=wdReplaceAll

' save and close the current document
ActiveDocument.Close wdSaveChanges

' look for next matching file
FName = Dir
Loop 
End Sub

Відповіді:


0

Я очікую, що поточний екземпляр не знає про те, що ChDirви зробили. Ви краще вкажіть повний шлях при відкритті файлу:

 ' open the file
 Documents.Open FileName:= Directory & "\" & FName 

Я з'єдную рядок в операторі Directoryта FNameз ним &.

Так що, якщо Directoryмістить C:\Users\pieria\Desktop\TempPicsі FNameмістить First.docxз &створенням нового рядкаC:\Users\pieria\Desktop\TempPics\First.docx

Зауважте, що \я додав між назвою каталогу та назвою файлу ...


У мене є ще одна проблема, з якою ви можете допомогти ... Я також намагаюся зробити "пошук і заміну зображень у нижньому колонтитулі. Код у мене, здається, працює лише для зображень, а не в колонтитулах!
Антоніо

Я не можу додати його до розділу коментарів, тому я відкрию ще одну тему та розміщую посилання
Антоніо

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.