Escolar Documentos
Profissional Documentos
Cultura Documentos
Impressão
Impressão de documentos é uma tarefa que, na maioria das vezes, é executada através
do Excel, não necessitando de macros. Entretanto, pode haver a necessidade de forma-
tações especiais, definição de regiões específicas, escolha de diversas planilhas, onde o
desenvolvimento de macros pode ser útil. Este capítulo apresentará os principais métodos
e propriedades relacionados à impressão e como a impressão do Relatório de Vendas é feita
no sistema proposto.
End Sub
Este exemplo imprime a planilha ativa, da página 1 até a página 10. São feitas 2 cópias
agrupadas com a visualização de impressão acionada na impressora padrão.
UÊ jÌ`ÊPrintPreview
Método que indica que se deseja apenas visualizar a impressão. A instrução Sheets(“Plan1”).
PrintPreview mostra como seria a impressão da planilha “Plan1”.
UÊ *À«Ài`>`iÊ6iÜ
Esta propriedade define como deve ser apresentada a visualização da impressão. O valor
xlPageBreakPreview indica para visualizar as quebras de página, e o valor xlNormalView indica
para não mostrar as quebras de página na visualização da impressão.
UÊ *À«Ài`>`iÊ"ÀiÌ>Ì
Esta propriedade define a orientação da página na impressão. Os valores possíveis são
xlPortrait e xlLandscape, para retrato ou paisagem, respectivamente.
UÊ *À«Ài`>`iÃÊ`>ÃÊ>À}iÃ
É possível configurar as margens para impressão com as propriedades LeftMargin, RightMar-
gin, BottomMargin, TopMargin, HeaderMargin e FooterMargin, relativas à margem esquerda,
direita, de baixo, de cima, do cabeçalho e do rodapé, respectivamente. Um exemplo de seu uso é:
ActiveSheet.PageSetup.TopMargin = Application.InchesToPoints(0.5)
Estas propriedades recebem valores em pontos e, no exemplo, a margem de cima foi de-
finida como sendo meia polegada. A função InchesToPoints converte o parâmetro fornecido
em polegadas para pontos.
UÊ *À«Ài`>`iÊ*>}i-iÌÕ«° >V`7
Ìi
Esta propriedade, quando possui o valor “True”, indica que a impressão será em preto e branco.
UÊ *À«Ài`>`iÃÊ*>}i-iÌÕ«°
iÌiÀÀâÌ>ÞÊiÊ*>}i-iÌÕ«°
iÌiÀ6iÀÌV>Þ
Estas propriedades, quando possuem o valor “True”, indicam para centralizar a impressão
na horizontal e na vertical, respectivamente.
Capítulo 17 Impressão 189
UÊ «ÀiÃÃKÊiÊÕ>Ê2V>Ê*?}>
Para imprimir todo o arquivo em uma única página, use o código da macro a seguir.
Sub umapagina()
Sheets("Plan1").PageSetup.Zoom = False
Sheets("Plan1").PageSetup.FitToPagesWide = 1
Sheets("Plan1").PageSetup.FitToPagesTall = 1
ActiveSheet.PrintOut
End Sub
Sheets("Resumo").Select
'ActiveSheet.PrintOut
Cells(3, 2) = ""
Cells(4, 1) = ""
Cells(5, 1) = ""
Cells(6, 1) = ""
Cells(7, 1) = ""
Cells(8, 1) = ""
Cells(9, 1) = ""
Cells(10, 1) = ""
Cells(11, 1) = ""
Cells(12, 1) = ""
Cells(13, 1) = ""
Cells(14, 1) = ""
'valor da venda
valor = Mid(TbValor, 3) ' valor da venda
valor = CCur(valor)
Cells(linha, 14) = valor
'IMPRESSÃO?
impre = MsgBox("Gostaria de imprimir um resumo da compra", _
vbQuestion + vbYesNo, "Impressão do Resumo")
If impre = vbYes Then 'usuário quer imprimir
impressao ' chama a macro que cuida da impressao
End If
Macro 125 – Trecho de código que inclui uma chamada à macro impressao.
Capítulo 17 Impressão 191
Observe a chamada à impressao que foi inserida no código, que só é executada caso o
usuário pressione o botão “Sim”, na MsgBox relativa à impressão.
'LIMPANDO O USERFORM PARA O PRÓXIMO CADASTRO
LbCarro = ""
CoModelo.Value = ""
LbCor = ""
TbNome = ""
TbTelefone = ""
CbPromocoes = False
ObAutomatico = False
ObManual = False
CbCouro = False
CbDVD = False
CbGPS = False
TbFinanciamento = False
Ob12x = False
Ob24x = False
op36x = False
TbDesconto = ""
TbValor = ""
TbValorTotal = ""
LbResumo.Clear
Macro 126 – Trecho de código, na macro BtOk_Click, que limpa o Formulário “Relatorio”.
O resultado de uma venda hipotética é mostrado na Figura 163, como apareceria na plani-
lha “Resumo”. Durante o desenvolvimento do sistema, pode ser útil adicionar um BreakPoint
na macro impressão antes de começar a limpar os dados, para os dados que serão impressos.