Notifications
Clear all

Impressão pelo VBA

4 Posts
3 Usuários
0 Reactions
1,186 Visualizações
(@duvidoso)
Posts: 0
New Member
Topic starter
 

Bom Dia!!

Gostaria de saber se a como eu enviar uma impressão pelo VBA, para uma impressora especifica.

Consigo abrir janela de impressão e etc como abaixo.
Application.Dialogs(xlDialogPrint).Show

Mas quero mais rapidamente, que com um comando já mande digamos para a impressora Epson TX tal tal............

Exemplo
Application.Print("Epson 800").exemplo

 
Postado : 10/10/2016 6:49 am
(@mprudencio)
Posts: 0
New Member
 

Se a impressora em questão for a impressora padrao.

Basta usar essa linha de codigo

Sheets("Plan1").printout

Vai imprimir a plan1 direto na impressora padrão.

 
Postado : 10/10/2016 7:12 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Como o Marcelo disse, se estiver como impressora Padrão é só utilizar o comando qu ele passou, mas se tem várias impressoras e quer enviar para uma delas, primeiro tem de saber o endereço da mesma, veja nas configurações, somente pelo nome que colocam não será possível, por exemplo, aqui no serviço tem mais de uma e estão em Rede e o endereço de uma delas é : "\sjpsvr069impressora_143" este é o que tem de estar na rotina, se eu colocar somente "impressora_143" que é o nome vai dar erro por não localizar, então verifique e ajusten a rotina abaixo :

Sub Imprimir_Qual_Impressora()
    Dim myprinter As String
    Dim printer_name As String

    'Ajuste o endereço da impressora que quer enviar
    printer_name = "\sjpsvr069impressora_143"

    myprinter = Application.ActivePrinter
    
    ActiveSheet.PrintOut Preview:=False, ActivePrinter:=printer_name, PrintToFile:=True, PrToFileName:=PSFileName
    
    Application.ActivePrinter = myprinter
    
End Sub

[]s

 
Postado : 10/10/2016 8:59 am
(@duvidoso)
Posts: 0
New Member
Topic starter
 

Muito obrigado mesmo de verdade!!!

 
Postado : 13/10/2016 5:39 am