
Eu tenho essa macro que é capaz de localizar e substituir em massa vários documentos do Word. Consigo localizar e substituir imagens (dentro de um cabeçalho), mas quando o implementei em meu código de macro, parece simplesmente ignorá-lo e não localizar e substituir nenhuma imagem. Não tenho certeza de por que esse é o caso, já que não há erros. Quaisquer dicas seriam extremamente apreciadas. Obrigado!!
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
Responder1
Eu percorreria cada storyRange (incluindo cabeçalhos) e usaria o método .Find do intervalo em vez do objeto de seleção.
Responder2
Como encontrar e substituir imagens no MS Word
MS-Word pode ajudar no cenário indicado acima. Existe uma maneira automática de localizar todas as imagens em um documento e substituí-las por uma nova imagem.
Observe que este método encontrará todas as imagens e substituirá todas elas por uma nova. Com este método, não podemos ser seletivos quanto às imagens. Aqui estão as etapas:
- Abra o documento do Microsoft Word no qual a substituição será feita.
- Insira a nova imagem na parte superior do documento.
- Selecione a imagem recém-inserida e pressione Ctrl+ Cpara copiá-la.
- Agora exclua a imagem recém-inserida.
- Pressione Ctrl+ Hpara abrir a caixa “Localizar e substituir”.
- Coloque
^g
na caixa “Encontrar o que” e^c
na caixa “Substituir por”
Método de localizar todas as imagens e substituí-las por uma nova.
Agora pressione o botão “Substituir tudo” para ver a mágica!
Todas as imagens foram substituídas no MS Word.
Você verá que todas as imagens do documento serão substituídas pela nova imagem. Obviamente, a operação de substituição também substituirá as imagens que você não deseja substituir. Nesse caso, pode ser necessário reinserir as imagens que não deveriam ser substituídas. Este método é útil em um cenário onde:
- o documento contém apenas as imagens que devem ser substituídas
- o documento contém um grande número de imagens que precisam ser substituídas e um número menor de imagens que não devem ser substituídas
O primeiro cenário é direto. No segundo cenário, você fará muito menos trabalho manual ao reinserir imagens que foram substituídas como efeito colateral.
O método funciona substituindo todos os gráficos (denotados por ^g
) pelo conteúdo da área de transferência (denotado por ^c
). Portanto, essencialmente, você pode substituir todas as imagens por qualquer coisa que possa copiar para a área de transferência.
Para manter intacta a paginação do seu documento, você deve usar uma nova imagem do mesmo tamanho.
Espero que esta dica do MS-Word tenha sido útil para você. Se você tiver alguma dúvida sobre este assunto, sinta-se à vontade para me perguntar por meio de comentários. Vou tentar ajudá-lo. Obrigado por usar o TechWelkin.
Artigos relacionados para obter mais informações:
- MS Word: como encontrar e substituir números, dígitos, numerais
- Encontre e substitua a formatação no MS-Word
- Localização e substituição múltiplas no MS Word usando macro
- Substituir linha, parágrafo e quebra de carro no MS Word
- Digite o símbolo de grau em MS Word, HTML, Unicode
- MS Word: Como selecionar uma área retangular vertical