Correção Código Exportar em PDF  [Resolvido]

Visual Basic for Aplication e macros no Excel.
Regras do fórum
Sua dúvida foi respondida? Marque como RESOLVIDO em seus tópicos, usando o botão com marca verde. Imagem

Correção Código Exportar em PDF

Mensagempor yatagan » Qui Jan 18, 2018 7:31 am

Bom dia.

Estava buscando um código VBA que pudesse salvar uma parte da planilha em PDF, mas sem que escolhesse um diretório, pois a planilha seria enviada por e-mail e assim a desconfiguraria. Achei este código em um site em inglês e adaptei para as minhas preferência, só que quando aparece a caixa de diálogo e resolvo não salvar o arquivo em PDF clico em cancelar ou no x, mas mesmo assim o arquivo em PDF é salvo e é como se eu tivesse apertado confirmar. Queria que ao clica no x ou Cancelar o processo se encerrasse, estou mandando o código e planilha como anexo.

Código: Selecionar todos
Sub SalvarPDF()

'www.contextures.com
'Para Excel 2010 adiante

Dim NomeArquivo As String
Dim wsA As Worksheet
Dim wbA As Workbook
Dim strName As String
Dim strCell As String
Dim strPath As String
Dim strFile As String
Dim strPathFile As String
Dim myFile As Variant
On Error GoTo errHandler

'Travar tela enquanto macro é executada
Application.ScreenUpdating = False

If MsgBox("Deseja Salvar Registro em PDF?", vbYesNo + vbQuestion, "Salvar PDF") = vbYes Then

Sheets("Relatório").Select

Set wbA = ActiveWorkbook
Set wsA = ActiveSheet

'Selecione Pasta Ativa Onde Arquivo se Encontra Salvo
strPath = wbA.Path
If strPath = "" Then
  strPath = Application.DefaultFilePath
End If
strPath = strPath & "\"

'Substituir caracteres
strName = Replace(wsA.Name, " ", "")
strName = Replace(strName, ".", "_")
strCell = Sheets("Relatório").Range("A2").Value

'Cria Nome do Arquivo (Aba+Celula)
strFile = strName & "_" & strCell & ".pdf"
strPathFile = strPath & strFile

'Selecionar Pasta Onde Arquivo é Salvo
myFile = Application.GetSaveAsFilename _
    (InitialFileName:=strPathFile, _
        FileFilter:="PDF (*.pdf), *.pdf", _
        Title:="Selecione Pasta Para Salvar Arquivo")

'Exportar/Salvar Arquivo em PDF
If myFile <> "False" Then
    wsA.ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=myFile, _
        Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, _
        OpenAfterPublish:=False
       
    'Mensagem de Confirmação de Arquivo Salvo
    MsgBox "Registro da " & strCell & " Salvo!", vb, "PDF Salvo!"
     
    Sheets("Registro").Select
    Range("A1").Select
      Else
      Resume exitHandler
End If

exitHandler:
    Exit Sub
errHandler:
    MsgBox "Não foi possível salvar PDF"
   
    Sheets("Registro").Select
    Range("A1").Select
   
    Resume exitHandler
    Else
    'NADA
    End If

    Sheets("Registro").Select
    Range("A1").Select
   
End Sub
Você não está autorizado a ver ou baixar esse anexo.
yatagan
Membro
Membro
 
Mensagens: 22
Registrado em: Qua Abr 26, 2017 1:57 am
Has thanked: 5 times
Have thanks: 0 time

{ SO_SELECT }

Re: Correção Código Exportar em PDF

Mensagempor wagner » Qui Jan 18, 2018 10:12 am

yatagan,

Bom dia!

Segue, anexo, um exemplo que faz o que você quer (enviar parte de uma planilha como .PDF). Note que no código é que fica a parte da planilha que você quer enviar. Você pode alterar isso no código.
Você não está autorizado a ver ou baixar esse anexo.
Se a resposta foi útil para você, por gentileza, Amigo, clique na mãozinha ao lado direito da ferramenta CITAR, no canto superior direito.

Atenciosamente
Wagner Morel

For this post the author wagner thanked:
yatagan (Qui Jan 18, 2018 10:15 am)
Avatar do usuário
wagner
Moderador
Moderador
 
Mensagens: 3590
Registrado em: Sáb Out 20, 2012 12:49 pm
Localização: Fortaleza - CE
Has thanked: 62 times
Have thanks: 1554 times

Re: Correção Código Exportar em PDF  [Resolvido]

Mensagempor yatagan » Qui Jan 18, 2018 10:13 am

Eu consegui ajeitar, tinha um código do mesmo segmento só que salvava em xlsm e comparei os dois e adicionei uma parte do outro e deu certo.

Edit:
Obrigado Wagner.
yatagan
Membro
Membro
 
Mensagens: 22
Registrado em: Qua Abr 26, 2017 1:57 am
Has thanked: 5 times
Have thanks: 0 time


Voltar para VBA & Macros

Quem está online

Usuários navegando neste fórum: Google [Bot] e 4 visitantes