Imprimir userform e...
 
Notifications
Clear all

Imprimir userform e enviar por email

3 Posts
1 Usuários
0 Reactions
1,355 Visualizações
(@charlie-81)
Posts: 290
Reputable Member
Topic starter
 

Pessoal, estive pensando....

Quero um botão para imprimir o form ativo e enviá-lo por email.
Quem se habilita a ajudar.

 
Postado : 14/09/2012 8:25 pm
(@charlie-81)
Posts: 290
Reputable Member
Topic starter
 

então... tem condição de se fzer isso?

 
Postado : 15/09/2012 9:30 am
(@charlie-81)
Posts: 290
Reputable Member
Topic starter
 

Pessoal??? Achei algo referente ao meu tópico na net, daí fiz algumas alterações visando atender meus anseios. Ficou até legal, só estou com um pequeno problema que não consigo resolver.

Bom, o código que encontrei e adaptei é este:

Private Declare Sub keybd_event Lib "user32" ( _
ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)

Private Sub Imprimir_Tela_Click()
Dim Wrd As Object, WrdDoc As Object
keybd_event vbKeySnapshot, 1, 0&, 0& 'Captura a tela na forma ativa
DoEvents
Set Wrd = CreateObject("Word.Application") 'Inicia o Word
Wrd.Visible = False 'Deixar o word invisível.
Set WrdDoc = Wrd.Documents.Add ' Prepara o Word para receber a imagem
On Error Resume Next
Wrd.Selection.PasteSpecial 'Cola o documento no Word
'Application.Dialogs(xlDialogPrinterSetup).Show ' Escolher a impressora
Application.Dialogs(xlDialogPrint).Show ' Escolher a impressora
WrdDoc.PrintOut False
End Sub

Coloquei o mesmo no formulário que quero imprimir, assim, quando clico no botão para capturar a tela ele imprime apenas o formulário ativo. Pois bem, o problema vem na hora de imprimir. Ele não me dava a opção de escolher a impressora, dai adicionei, mais uma linha que me dava essa possibilidade. A linha que está ativa no código é a que quero utilizar:

Application.Dialogs(xlDialogPrint).Show ' Escolher a impressora

Porém, quando eu escolho a impressora que desejo imprimir, aparecem 2 telas para salvar. Já utilizando a outra linha:

'Application.Dialogs(xlDialogPrinterSetup).Show ' Escolher a impressora

aparece somente uma tela. Acontece que esta 2ª opção é mais simples que a 1ª opção, por isso o desejo de utilizar a 1ª.

Uma última observação: Na 1ª opção quando fecho a 2ªjanela que se abre e utilizo a 1ª janela que foi aberta, quando mando salvar o documento não é salvo.

 
Postado : 15/09/2012 8:19 pm