Fórum Excel Bácico, Avançado e Vba

Este fórum é destina a usuário de Excel, que queiram compartilhar informações a básicas, avançadas e programação em VBA...
 
InícioInício  FAQFAQ  BuscarBuscar  MembrosMembros  GruposGrupos  Registrar-seRegistrar-se  Login  

Compartilhe | 
 

 Salvar planilha em PDF, através de botão

Ver o tópico anterior Ver o tópico seguinte Ir em baixo 
AutorMensagem
jrsetti



Mensagens : 2
Data de inscrição : 18/08/2011

MensagemAssunto: Salvar planilha em PDF, através de botão   Qui Ago 18, 2011 10:55 am

Ola pessoal,

Sou novo por aki e no VBA, então se puderem me ajudar:

Tenho uma planilha e nela há um botão, quando clico nesse botão preciso que a planilha seja salva no formato PDF em um determinado lugar,
tentei com o seguinte codigo, ele até gera o arquivo, mas quando vou abri-lo apresenta um erro no adobe reader informando que não pode abrir o arquivo.

ActiveWorkbook.SaveAs "C:\teste.pdf", FileFormat:=???

??? não sei oque por, ja tentei varios

se puderem me ajudar, eu agradeço
Voltar ao Topo Ir em baixo
Ver perfil do usuário
alexandrevba



Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

MensagemAssunto: Re: Salvar planilha em PDF, através de botão   Sex Ago 19, 2011 2:48 am

Boa noite!!

Ai vai...

Option Explicit

Sub PrintToPDF_Early()
'Author : Ken Puls (www.excelguru.ca)
'Macro Purpose: Print to PDF file using PDFCreator
' (Download from http://sourceforge.net/projects/pdfcreator/)
' Designed for early bind, set reference to PDFCreator

Dim pdfjob As PDFCreator.clsPDFCreator
Dim sPDFName As String
Dim sPDFPath As String
Dim bRestart As Boolean

'/// Change the output file name here! ///
sPDFName = "testPDF.pdf"
sPDFPath = ActiveWorkbook.Path & Application.PathSeparator

'Check if worksheet is empty and exit if so
If IsEmpty(ActiveSheet.UsedRange) Then Exit Sub

'Activate error handling and turn off screen updates
On Error GoTo EarlyExit
Application.ScreenUpdating = False

Set pdfjob = New PDFCreator.clsPDFCreator

'Check if PDFCreator is already running and attempt to kill the process if so
Do
bRestart = False
Set pdfjob = New PDFCreator.clsPDFCreator
If pdfjob.cStart("/NoProcessingAtStartup") = False Then
'PDF Creator is already running. Kill the existing process
Shell "taskkill /f /im PDFCreator.exe", vbHide
DoEvents
Set pdfjob = Nothing
bRestart = True
End If
Loop Until bRestart = False

'Assign settings for PDF job
With pdfjob
.cOption("UseAutosave") = 1
.cOption("UseAutosaveDirectory") = 1
.cOption("AutosaveDirectory") = sPDFPath
.cOption("AutosaveFilename") = sPDFName
.cOption("AutosaveFormat") = 0 ' 0 = PDF
.cClearCache
End With

'Delete the PDF if it already exists
If Dir(sPDFPath & sPDFName) = sPDFName Then Kill (sPDFPath & sPDFName)

'Print the document to PDF
ActiveSheet.PrintOut copies:=1, ActivePrinter:="PDFCreator"

'Wait until the print job has entered the print queue
Do Until pdfjob.cCountOfPrintjobs = 1
DoEvents
Loop
pdfjob.cPrinterStop = False

'Wait until the file shows up before closing PDF Creator
Do
DoEvents
Loop Until Dir(sPDFPath & sPDFName) = sPDFName

Cleanup:
'Release objects and terminate PDFCreator
Set pdfjob = Nothing
Shell "taskkill /f /im PDFCreator.exe", vbHide
On Error GoTo 0
Application.ScreenUpdating = True
Exit Sub

EarlyExit:
'Inform user of error, and go to cleanup section
MsgBox "There was an error encountered. PDFCreator has" & vbCrLf & _
"has been terminated. Please try again.", _
vbCritical + vbOKOnly, "Error"
Resume Cleanup
End Sub



Att..
Voltar ao Topo Ir em baixo
Ver perfil do usuário
jrsetti



Mensagens : 2
Data de inscrição : 18/08/2011

MensagemAssunto: Re: Salvar planilha em PDF, através de botão   Sex Ago 19, 2011 6:48 am

Alexandre,

Deu um erro na linha:

Dim pdfjob As PDFCreator.clsPDFCreator

parece que não encontra esse tipo de veiravel.

obs: tenho pdf creator instalado
Voltar ao Topo Ir em baixo
Ver perfil do usuário
Conteúdo patrocinado




MensagemAssunto: Re: Salvar planilha em PDF, através de botão   Hoje à(s) 4:43 pm

Voltar ao Topo Ir em baixo
 
Salvar planilha em PDF, através de botão
Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo 
Página 1 de 1
 Tópicos similares
-
» Criar e salvar documento do word através do formulário do access
» problemas para salvar inventario
» [Resolvido]Salvar sprite como gif animado durante o jogo
» [dúvida]Carregar e Salvar Arquivo
» Como Troca ícone do Jogo e Salvar o Jogo em EXE que de para Rodar

Permissão deste fórum:Você não pode responder aos tópicos neste fórum
Fórum Excel Bácico, Avançado e Vba :: Intermediário :: Excel Intermediário-
Ir para: