Neste artigo, vamos nos concentrar em mostrar como ocultar automaticamente imagens e formas via VBA ao imprimir seu documento do Word.
Em uma de nossas publicações anteriores, apresentamos 4 maneiras de ocultar imagens e formas para evitar que sejam impressas. Para mais detalhes, consulte este artigo: 4 maneiras de economizar tinta imprimindo documentos do Word sem imagens e formas
No entanto, as 4 maneiras usuais que propusemos outro dia exigem ocultar imagens e formas na tela primeiro. Além do mais, você precisa alternar manualmente para a exibição de backstage do Word para imprimir arquivos. Depois disso, se você quiser manter imagens e formas intactas em sua tela, sua única opção é desfazer todas as ações anteriores.
Portanto, gostaríamos de apresentar a maneira macro para ajudá-lo a economizar esforços.
Etapas para executar a macro
- Em primeiro lugar, clique na aba “Desenvolvedor”.
- Em seguida, clique em “Visual Basic” para abrir o editor VBA.

- Em seguida, clique em “Normal” para inserir um novo módulo clicando na guia “Inserir”.
- Em seguida, escolha “Módulo”.
- Agora clique duas vezes no módulo recém-criado para ter uma área de edição.
- Cole os seguintes códigos lá:
Sub PrintNoImagesOrShapesInDoc()
Dim objDoc As Document
Dim objInLineShape As InlineShape
Dim objShape As Shape
' Initialization
Set objDoc = ActiveDocument
' Find all images and shapes in the active document and then hide them to prevent from being printed.
With objDoc
For Each objInLineShape In .InlineShapes
objInLineShape.Select
Selection.Font.Hidden = True
Next objInLineShape
Options.PrintDrawingObjects = False
End With
Dialogs(wdDialogFilePrint).Show
With objDoc
For Each objInLineShape In .InlineShapes
objInLineShape.Select
Selection.Font.Hidden = False
Next objInLineShape
End With
End Sub
- Por fim, clique em “Executar” ou pressione “F5”.
Com esse clique ou golpe, o Word exibirá a caixa de diálogo “Imprimir”. Depois de escolher as propriedades de impressão, clique em “OK” para imprimir.
Você receberá um arquivo sem imagens ou formas, enquanto a versão eletrônica permanece a mesma. Agora, caso você precise imprimir vários arquivos, todos excluindo imagens e formas, aqui está o caminho.
- Em primeiro lugar, organize todos os arquivos na mesma pasta.
- Em seguida, repita todas as etapas acima para instalar e executar uma macro no editor VBA, apenas para substituir a macro por esta:
Sub PrintMultiDocWithNoImagesAndShapes()
Dim objDoc As Document
Dim objInLineShape As InlineShape
Dim objShape As Shape
Dim strFile As String, strFolder As String
' Initialization
strFolder = "C:\Users\Public\Documents\New folder\"
strFile = Dir(strFolder & "*.docx", vbNormal)
While strFile <> ""
Set objDoc = Documents.Open(FileName:=strFolder & strFile)
' Open each doc and print it withour images and shapes.
With objDoc
For Each objInLineShape In .InlineShapes
objInLineShape.Select
Selection.Font.Hidden = True
Next objInLineShape
Options.PrintDrawingObjects = False
End With
Dialogs(wdDialogFilePrint).Show
With objDoc
For Each objInLineShape In .InlineShapes
objInLineShape.Select
Selection.Font.Hidden = False
Next objInLineShape
End With
objDoc.Save
objDoc.Close
strFile = Dir()
Wend
End Sub
Observação:
Na linha de código “strFolder = “C:\Users\Public\Documents\New folder\””, substitua o caminho do arquivo por um real da pasta onde você armazena os arquivos.
Necessidade de Reparar Arquivos Quebrados
Embora a perda de arquivos não seja um tópico estranho agora, algumas pessoas ainda minam a importância de correção de documentoAlgumas pessoas simplesmente descartam arquivos danificados. Mas, e se for um arquivo realmente crítico? Com o prazo se aproximando, você terá tempo suficiente para começar tudo de novo? A resposta é óbvia. Quando se trata de recuperar documentos corrompidos, escolher uma ferramenta confiável é essencial.
Introdução do autor:
Vera Chen é especialista em recuperação de dados em DataNumen, Inc., líder mundial em tecnologias de recuperação de dados, incluindo xls corrompidos e pdf reparar produtos de software. Para mais informações visite www.datanumen.com


