Jump to content

Salvar em PDF


Recommended Posts

tenho um sistema de pedidos em excel vba e gostaria de saber se tem como salvar a plan do pedido em PDF automaticamente determinando o disco onde deve gravar e o nome do arquivo.

Também gostaria de saber se é possível já anexar no microsoft outlook 2007 para enviar por email.

obrigado

Link to comment
Share on other sites

Para exportar para PDF no Excel:

ActiveSheet.ExportAsFixedFormat xlTypePDF, "Nomecompleto do ficheiro pdf"

Tem mais parametros para um configuração personalizada, tipo seleção de folhas, area de impressão etc.

Para enviar para o outlook tens de criar uma instância do Outlook e criar uma mensagem para anexar o ficheiro, depois de criado.

Não tenho nenhum código criado para isso, mas posso te indicar um dos muitos sitios onde podes encontrar exemplos:

    http://www.pcreview.co.uk/forums/send-outlook-attachment-within-excel-t968413.html

O caminho mais curto para conseguir fazer muitas coisas é fazer uma de cada vez. Samuel Smiles

Link to comment
Share on other sites

consegui fazer com que salve em PDF...

eu criei uma pasta PEDIDOS PDF para salvar todos os pedido nesta pasta. como faço para declarar o comando e salvar nesta pasta?

tambem gostaria de saber se é possivel determinar o nome do arquivo utilizando algumas informações do textbox.

Exemplo:

vou salvar o pedido nº 100, então:

Nome do arquivo que gostaria: PEDIDO 100 - NOME DO CLIENTE (sendo que o nº do pedido e o nome do cliente eu usaria do textbox)

Link to comment
Share on other sites

não estou conseguindo. segue abaixo os campos e pastas que quero salvar.

Disco: D

Pasta: Sistema Pedidos

Pasta: Pedidos PDF

Txt_CodigoPedido = 004

Combo_Cliente = TNT

teria que salvar com o nome: Pedido nº 004 - TNT

fiz igual ao teu código mas não aceita "" e +

Link to comment
Share on other sites

Boas

Dim destino, Disco, Pasta1, Pasta2, Txt_CodigoPedido, Combo_Cliente As String

Disco = "C"
Pasta1 = "Sistema Pedidos"
Pasta2 = "Pedidos PDF"

Txt_CodigoPedido = "004"
Combo_Cliente = "TNT"

destino = Disco & ":\" & Pasta1 & "\" & Pasta2 & "\" & "Pedido Nº " & Txt_CodigoPedido & " - " & Combo_Cliente & ".pdf"

ActiveSheet.ExportAsFixedFormat xlTypePDF, destino

Ou de maneira mais simples

Dim destino, Txt_CodigoPedido, Combo_Cliente As String

Txt_CodigoPedido = "004"
Combo_Cliente = "TNT"

destino = "C:\Sistema Pedidos\Pedidos PDF\" & "Pedido Nº " & Txt_CodigoPedido & " - " & Combo_Cliente & ".pdf"

ActiveSheet.ExportAsFixedFormat xlTypePDF, destino

E ainda podes fazer assim

Dim Txt_CodigoPedido, Combo_Cliente As String

Txt_CodigoPedido = "004"
Combo_Cliente = "TNT"

ActiveSheet.ExportAsFixedFormat xlTypePDF, "C:\Sistema Pedidos\Pedidos PDF\" & "Pedido Nº " & Txt_CodigoPedido & " - " & Combo_Cliente & ".pdf"

A informática chegou para resolver problemas que antes não existiam

Quem ri por último é porque está conectado a 52 Kbs.

Link to comment
Share on other sites

Usa o Parametro OpenAfterPublish  para abrir depois de guardar.

O exemplo dado acima poderia ficar assim:

    Dim Ficheiro As String

    'Não é necessário a extensão do ficheiro, pois o Excel acrescenta-a
     Ficheiro = "C:\Sistema Pedidos\Pedidos PDF\Pedido Nº " & Txt_CodigoPedido & " - " & Combo_Cliente

    'Convem usar o nome dos parametros porque com muitos parametros optionais, 
     ' ignorar alguns pelo meio faz com que o compilador VBA por vezes esqueça os restantes
     ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Ficheiro, OpenAfterPublish:=True

        

O caminho mais curto para conseguir fazer muitas coisas é fazer uma de cada vez. Samuel Smiles

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.