Массовый поиск и замена для макросов изображений - Microsoft Word 2013

Массовый поиск и замена для макросов изображений - Microsoft Word 2013

У меня есть макрос, который может выполнять массовый поиск и замену в нескольких документах Word. Я могу выполнять поиск и замену для изображений (в заголовке), но когда я реализовал его в своем коде макроса, он, похоже, просто игнорирует его и не находит и не заменяет никаких изображений. Я не уверен, почему так происходит, поскольку ошибок нет. Любые советы были бы очень признательны. Спасибо!!

Sub FindandReplaceTextPic()
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:=Directory & "\" & FName

    ' 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
'search and replace picture from clipboard
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
   .Text = "^g"
   .Replacement.Text = "^c"
   .Forward = True
   .Wrap = wdFindContinue
   .Format = False
   .MatchCase = False
   .MatchWholeWord = False
   .MatchWildcards = False
   .MatchSoundsLike = False
   .MatchAllWordForms = False
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

решение1

Я бы перебрал каждый storyRange (включая заголовки) и использовал бы метод .Find диапазона вместо объекта выбора.

решение2

Как найти и заменить изображения в MS Word

MS-Word может помочь в приведенном выше сценарии. Существует автоматический способ найти все изображения в документе, а затем заменить их все новым изображением.

Обратите внимание, что этот метод найдет все изображения и заменит их все на новое. С помощью этого метода мы не можем быть избирательными в отношении изображений. Вот шаги:

  1. Откройте документ Microsoft Word, в котором необходимо выполнить замену.
  2. Вставьте новое изображение в верхнюю часть документа.
  3. Выберите только что вставленное изображение и нажмите Ctrl+ , Cчтобы скопировать его.
  4. Теперь удалите только что вставленное изображение.
  5. Нажмите Ctrl+ H, чтобы открыть окно «Найти и заменить».
  6. Введите ^gв поле «Найти» и ^cв поле «Заменить на»

Метод поиска всех изображений и замены их на новые.

Теперь нажмите кнопку «Заменить все», чтобы увидеть волшебство!

Все изображения были заменены в MS Word.

Вы увидите, что все изображения в документе будут заменены новым изображением. Конечно, операция замены также заменит изображения, которые вы не хотели заменять. В таком случае вам может потребоваться повторно вставить изображения, которые не должны были заменяться. Этот метод полезен в сценарии, где:

  1. документ содержит только те изображения, которые подлежат замене
  2. документ содержит большое количество изображений, которые необходимо заменить, и меньшее количество изображений, которые не следует заменять

Первый сценарий прост. Во втором сценарии вы будете делать гораздо меньше ручной работы, повторно вставляя изображения, которые были заменены в качестве побочного эффекта.

Метод работает путем замены всех графических объектов (обозначенных как ^g) содержимым буфера обмена (обозначенным как ^c). Таким образом, по сути, вы можете заменить все изображения всем, что можно скопировать в буфер обмена.

Чтобы сохранить нетронутой нумерацию страниц документа, следует использовать новое изображение того же размера.

Надеюсь, этот совет по MS-Word был вам полезен. Если у вас есть вопросы по этой теме, смело задавайте их мне в комментариях. Я постараюсь вам помочь. Спасибо за использование TechWelkin.

Статьи по теме для получения дополнительной информации:

  1. MS Word: как найти и заменить числа, цифры, числительные
  2. Найти и заменить форматирование в MS-Word
  3. Множественный поиск и замена в MS Word с использованием макроса
  4. Заменить строку, абзац, разрыв каретки в MS Word
  5. Введите символ градуса ° в MS Word, HTML, Unicode
  6. MS Word: Как выделить вертикальную прямоугольную область

Связанный контент