Note: The other languages of the website are Google-translated. Back to English

Como usar o botão de comando para salvar a planilha ativa como um arquivo PDF no Excel?

Ao trabalhar no Microsoft Excel, você pode enfrentar o problema de salvar a planilha ativa como um arquivo PDF. Neste artigo, você pode aprender como salvar uma planilha ativa como um arquivo PDF com código VBA por meio de um botão de comando. E se você também deseja salvar um intervalo ou cada planilha na pasta de trabalho ativa como um arquivo PDF individual, este artigo também pode ajudá-lo.

Use o botão de comando para salvar a planilha ativa como um arquivo PDF com código VBA
Salve facilmente o ativo ou cada planilha como um arquivo PDF individual com o Kutools para Excel


Use o botão de comando para salvar a planilha ativa como um arquivo PDF com código VBA

Você pode executar o seguinte código VBA para salvar uma planilha ativa como arquivo PDF clicando em um botão de comando. Faça o seguinte.

1. Em primeiro lugar, você precisa criar uma pasta chamada PDF para salvar seu novo arquivo PDF convertido. Aqui eu crio esta pasta em meu disco local (C :).

2. Insira um botão de comando clicando em Desenvolvedor > inserção > Botão de comando (controle ActiveX). Veja a imagem:

2. Em seguida, desenhe um Botão de Comando na planilha de que você precisa para adicionar novas linhas, clique com o botão direito no Botão de Comando e clique Propriedades no menu do botão direito.

3. No Propriedades caixa de diálogo, insira o texto exibido do botão de comando no Subtítulo caixa sob o Categorizados guia e feche a caixa de diálogo.

Você pode ver que o texto exibido do botão de comando é alterado conforme a imagem abaixo mostrada.

4. Clique com o botão direito do mouse no Botão de comando novamente e clique em Ver código no menu do botão direito.

5. Na abertura Microsoft Visual Basic para Aplicações janela, substitua o código original na janela Código pelo seguinte código VBA.

Código VBA: Botão de comando para salvar planilha ativa como PDF

Private Sub CommandButton1_Click()
    Application.ScreenUpdating = False
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
            Filename:="C:\PDF\Export.pdf", _
            OpenAfterPublish:=False
    Application.ScreenUpdating = True
End Sub

Anote os: No código, CommandButton1 é o nome do botão de comando que você usará para salvar a planilha ativa como um arquivo PDF. "C: \ PDF \ Export.pdf" é o caminho e o nome do arquivo PDF salvo.

6. aperte o outro + Q simultaneamente para fechar o Microsoft Visual Basic para Aplicações janela. Em seguida, desligue o Modo de design sob a Desenvolvedor aba.

Agora, clique no Botão de Comando, a planilha ativa será salva como um arquivo PDF denominado Exportar e localizada no local especificado.


Salve cada planilha como um arquivo PDF individual da pasta de trabalho ativa com o Kutools para Excel

Aqui recomendo o Dividir a pasta de trabalho utilidade de Kutools for Excel para salvar facilmente a planilha ativa como um arquivo PDF. Além disso, você também pode salvar cada planilha da pasta de trabalho atual como um arquivo PDF individual com este utilitário.

Antes de aplicar Kutools for Excel, Por favor baixe e instale primeiro.

1. Na pasta de trabalho, você precisa salvar cada planilha como um arquivo PDF individual e clique em Kutools Plus > livro > Dividir a pasta de trabalho. Veja a imagem:

2. No Dividir a pasta de trabalho caixa de diálogo, configure da seguinte maneira:

2.1) Verifique apenas o nome da planilha ativa no Nome da planilha caixa;
2.2) Selecione PDF (* .pdf) opção do Salvar como tipo lista suspensa;
2.3) Clique no Split botão, então um Selecionar pasta caixa de diálogo aparece, especifique uma pasta para salvar o arquivo PDF;

Em seguida, a planilha selecionada é salva como arquivo PDF imediatamente.

Notas:

1. Você pode marcar vários nomes de planilhas na caixa Nome da planilha para salvá-los como arquivo PDF individual de uma vez;
2. Exceto para salvar planilhas como arquivos PDF, você pode salvar planilhas como txt. ou csv. arquivo conforme você precisa.

  Se você quiser ter uma avaliação gratuita (30-dia) deste utilitário, por favor clique para fazer o downloade, em seguida, aplique a operação de acordo com as etapas acima.


Demonstração: Salve a seleção ou cada planilha como PDF com o Kutools para Excel


Artigos relacionados:


As melhores ferramentas de produtividade para escritório

O Kutools for Excel resolve a maioria dos seus problemas e aumenta sua produtividade em 80%

  • armadilha para peixes: Insira rapidamente fórmulas complexas, gráficos e qualquer coisa que você tenha usado antes; Criptografar células com senha; Criar lista de discussão e enviar emails ...
  • Barra Super Fórmula (edite facilmente várias linhas de texto e fórmula); Layout de leitura (ler e editar facilmente um grande número de células); Colar na faixa filtrada...
  • Mesclar células / linhas / colunas sem perder dados; Dividir o conteúdo das células; Combinar linhas / colunas duplicadas... Evite células duplicadas; Comparar intervalos...
  • Selecione Duplicado ou Único Linhas; Selecione linhas em branco (todas as células estão vazias); Super Find e Fuzzy Find em muitos livros; Seleção aleatória ...
  • Cópia exata Várias células sem alterar a referência da fórmula; Criação automática de referências para várias folhas; Inserir marcadores, Caixas de seleção e mais ...
  • Extrair Texto, Adicionar texto, remover por posição, Remover Espaço; Criar e imprimir subtotais de paginação; Converter entre conteúdo de células e comentários...
  • Super Filtro (salvar e aplicar esquemas de filtro a outras planilhas); Classificação Avançada por mês / semana / dia, frequência e mais; Filtro Especial por negrito, itálico ...
  • Combine pastas de trabalho e planilhas; Mesclar tabelas com base em colunas-chave; Divida os dados em várias folhas; Conversão em lote de xls, xlsx e PDF...
  • Mais de 300 recursos poderosos. Suporta Office / Excel 2007-2021 e 365. Suporta todos os idiomas. Fácil implantação em sua empresa ou organização. Recursos completos de avaliação gratuita de 30 dias. Garantia de devolução do dinheiro em 60 dias.
guia kte 201905

Guia do Office traz interface com guias para o Office e torna seu trabalho muito mais fácil

  • Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
  • Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!
parte inferior da aba do escritório
Comentários (33)
Ainda não há classificações. Seja o primeiro a avaliar!
Este comentário foi feito pelo moderador no site
Oi, Como permitir que o usuário digite o nome do arquivo em vez de "Export.pdf"? Obrigado, Ian
Este comentário foi feito pelo moderador no site
Sub Salvar como PDF()
Application.Screen Update = False
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
Filename:=Application.InputBox("Digite o nome do arquivo")

strExcelPath = "H:\Meus Documentos"

Application.ScreenUpdating = True
End Sub
Este comentário foi feito pelo moderador no site
Tenho uma solicitação semelhante quero que o arquivo tenha o mesmo nome de uma determinada célula na aba , ou seja: G19 ( Este é o número da fatura e quero que o arquivo seja salvo como PDF com esse nome) ? . Consegui fazer o export.pdf funcionar, mas isso não funcionará em vários salvamentos.
Este comentário foi feito pelo moderador no site
Bom dia,
O código VBA a seguir pode ajudá-lo a resolver o problema. Por favor, selecione a célula G19 na caixa de diálogo pop-up Kutoos for Excel depois de executar o código. Obrigado pelo seu comentário.

Sub CommandButton1_Click () particular
Dim xRg como intervalo
Dim xName As String
On Error Resume Next
Application.ScreenUpdating = False
Set xRg = Application.InputBox("Selecione a célula que você irá nomear o PDF com o valor da célula:", "Kutools for Excel", Selection.Address, , , , , 8)
Se xRg não for nada, saia do sub
xNome = xRg(1).Valor
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
Nome do arquivo:="C:\PDF\" & xName & ".pdf", _
OpenAfterPublish: = False
Application.ScreenUpdating = True
End Sub
Este comentário foi feito pelo moderador no site
Mudei o caminho para a unidade D, mas não está salvando na unidade D. O que fazer?
Este comentário foi feito pelo moderador no site
Olá Akshay MN,
Se você modificou o caminho acima para a unidade D, verifique se há uma pasta chamada PDF em sua unidade D.
Se você deseja apenas salvar o arquivo na unidade D sem criar uma subpasta, use este caminho de pasta: "C:\" & xName & ".pdf"
Este comentário foi feito pelo moderador no site
Posso converter meus arquivos para PDF agora com um botão de comando, mas também posso obter essa mesma função para permitir um nome diferente para cada arquivo; baseado em uma estrutura numérica existente?
Este comentário foi feito pelo moderador no site
Oi Randy,
Desculpe, não posso ajudar com isso, bem-vindo para postar qualquer pergunta em nosso fórum: https://www.extendoffice.com/forum.html para obter mais suportes do Excel de nosso profissional.
Este comentário foi feito pelo moderador no site
MOSTRA erro de tempo de execução '1004'
Este comentário foi feito pelo moderador no site
Olá Nzé,
Preciso saber sua versão do Excel. Obrigado pelo seu comentário.
Este comentário foi feito pelo moderador no site
plz cole a codificação para salvar como botão pdf no microsoft excel
Este comentário foi feito pelo moderador no site
Como faço isso para o MS Word? Eu tenho um monte de perguntas com opções de botão de opção como respostas. Então, eu quero criar um botão de comando para gerar as perguntas com as respostas selecionadas apenas em outro documento do Word. Como eu faço isso? Um código ajudaria muito! Enviarei o documento por e-mail se precisar. Obrigado!
Este comentário foi feito pelo moderador no site
Dia bom,
Desculpe, não posso ajudá-lo com isso ainda.
Este comentário foi feito pelo moderador no site
Sub ZapiszPDF()
Dim sNazwaPliku As String

sNazwaPliku = ActiveSheet.Name

Application.Dialogs(xlDialogSaveAs).Show sNazwaPliku, 57

End Sub
Este comentário foi feito pelo moderador no site
Eu segui o código, isso é o que eu tenho:

Sub CommandButton2_Click () particular
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
Nome do arquivo:=Range("P2"), _
OpenAfterPublish:=Verdadeiro
Application.ScreenUpdating = True
End Sub

eu preciso do arquivo para salvar no local em que o arquivo original está localizado. também precisa de uma cópia do arquivo excel para salvar também com o mesmo nome.
Este comentário foi feito pelo moderador no site
Olá Matt Bentley,
O código funciona perfeitamente. Obrigado por compartilhar.
Este comentário foi feito pelo moderador no site
Olá,

kann jemand mir helfen?

Ich nutze diese Zeilen und möchte jedoch, das aus dem Blatt ein Zellenwert als Dateiname gespeichert wird:

Sub CommandButton1_Click () particular
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
Nome do arquivo:="C:\PDF\Export.pdf", _
OpenAfterPublish: = False
Application.ScreenUpdating = True
End Sub

Obrigado
Este comentário foi feito pelo moderador no site
Olá,

ich nutze diese Zeilen und möchte das eine Zelle als Dateiname verwenden wird!
Kann mir jemand ein Tipp geben?


Sub CommandButton1_Click () particular
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
Nome do arquivo:="c:/" & G3 & ".pdf", _
OpenAfterPublish: = False
Application.ScreenUpdating = True
End Sub
Este comentário foi feito pelo moderador no site
Oi Sasha,
O código a seguir pode ajudar. Antes de aplicar o código, altere 'C:\Usuários\Win10x64Test\Documentos\PDF' na quarta linha para o caminho da pasta de destino.
Private Sub CommandButton1_Click()
'Updated by Extendoffice 20220929
    Application.ScreenUpdating = False
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
            Filename:="C:\Users\Win10x64Test\Documents\PDF\" & Range("G3").Value, _
            OpenAfterPublish:=False
    Application.ScreenUpdating = True
End Sub
Este comentário foi feito pelo moderador no site
Что это за кнопка - "другой" + Q клавиши одновременно" ? Не поняла что нажимать, подскажите, пожалукажите
Este comentário foi feito pelo moderador no site
Olá Диана,
É a tecla "Alt" do seu teclado. O Microsoft Excel permite que os usuários pressionem as teclas "Alt" + "Q" para fechar a janela do Microsoft Visual Basic for Applications e retornar à planilha.
Este comentário foi feito pelo moderador no site
Goededag

is het mogelijk om een ​​filmpje of een voorbeeld excelblad te maken voor de Command-Knop Om Een ​​Actief Werkblad Op Te Slaan Als PDF-Bestand Met VBA-Code.
kom er niet helemaal uit met de codes.
alvast bedankt
Este comentário foi feito pelo moderador no site
Oi Max,
Desculpe, eu não entendo o que você quer dizer. Pode ser necessário anexar uma captura de tela do que você está tentando fazer. Desculpe pela inconveniência.
Este comentário foi feito pelo moderador no site
Equipe oi,

Gostaria de saber se alguém poderia ajudar a alterar o destino do arquivo criado para a área de trabalho de qualquer usuário? Minha empresa não permite acesso a C: então o script não funciona.

MUITO MUITO MUITO obrigado!
Este comentário foi feito pelo moderador no site
Olá Ben Stoddart,
Você só precisa abrir qualquer pasta em sua área de trabalho e copiar o caminho da pasta na caixa de endereço e substituir o caminho da pasta no código VBA pelo caminho que você copiou.
Aqui está a nova linha de nome de arquivo (substitua o nome de usuário pelo seu próprio nome de usuário), Exportar.pdf é o nome e a extensão do arquivo PDF:
Nome do arquivo:="C:\Usuários\Nome de usuário\Desktop\PDF\Export.pdf", _
Este comentário foi feito pelo moderador no site
Sempre que eu executo isso, ele salva um PDF na minha unidade local onde as planilhas do Excel foram salvas, como faço para impedir que isso seja salvo automaticamente?

Sub CommandButton1_Click () particular
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
OpenAfterPublish:=Verdadeiro
Application.ScreenUpdating = True
End Sub
Este comentário foi feito pelo moderador no site
Quando executo o abaixo, ele cria uma versão local do PDF automaticamente - como faço para impedir que isso seja salvo automaticamente?

Sub CommandButton1_Click () particular
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
OpenAfterPublish:=Verdadeiro
Application.ScreenUpdating = True
End Sub
Este comentário foi feito pelo moderador no site
Oi James,
Deseja abrir uma janela para selecionar uma pasta para salvar o arquivo PDF manualmente?
Este comentário foi feito pelo moderador no site
Oi Crystal, idealmente sim, então posso escolher onde salvar o PDF.
Este comentário foi feito pelo moderador no site
H James,

O código VBA a seguir pode ajudá-lo a resolver o problema.
Anote os: você não pode manipular o destino e o nome do arquivo ao mesmo tempo. Depois de adicionar o seguinte código VBA, quando você clicar no botão, uma caixa de diálogo aparecerá para você selecionar uma pasta de destino. Depois de selecionar uma pasta de destino, uma caixa aparecerá para você dar um nome ao arquivo PDF.

Private Sub CommandButton1_Click()
'Updated by Extendoffice 20221223
    Dim xDlg As FileDialog
    Dim xFolder As Variant
    Set xDlg = Application.FileDialog(msoFileDialogFolderPicker)
    Dim xStrName As String
    If xDlg.Show <> -1 Then Exit Sub
    
    xFolder = xDlg.SelectedItems(1)
    
    xStart = InputBox("file name", "KuTools for Excel", ActiveSheet.Name & ".pdf")

    Application.ScreenUpdating = False

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
            Filename:=xFolder & "\" & xStart, _
            OpenAfterPublish:=False
    Application.ScreenUpdating = True

End Sub
Este comentário foi feito pelo moderador no site
Ich nutze diese Zeilen und das funktioniert auch gut, mein Problem ist nur, sollte diese Datei bereits vorhanden sein, wird diese einfach überschrieben!
Wie kann ich das vermeiden, es sollte eine Meldung kommen, Datei existiert bereits und es soll beendet werden?
Este comentário foi feito pelo moderador no site
Ich nutze diese Zeilen und das funktioniert auch gut, mein Problem ist nur, sollte diese Datei bereits vorhanden sein, WIRD diese einfach überschrieben!
Wie kann ich das vermeiden, es sollte eine Meldung kommen, Datei existiert bereits und es soll beendet werden?


Sub CommandButton1_Click () particular
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
Nome do arquivo:="X:\firmen\Buchhaltung\Rechnungs-Kopie_Ackermann Service GmbH\2022\RK-Abrechnung\" & ActiveSheet.Range("G1") & ".pdf", _
OpenAfterPublish:=Verdadeiro
Application.ScreenUpdating = True
End Sub
Este comentário foi feito pelo moderador no site
Oi Sasha,
O seguinte código VBA pode ajudar. Por favor, tente.

Private Sub CommandButton1_Click()
'Updated by Extendoffice 20221230
    Dim xPDFName As String
    Dim xPDFPath As String
    Dim xObjFS As Object
    Dim xNum As Integer
    Dim xStr As String
    
    xPDFName = "Export" 'The file name
    xPDFPath = "D:\work\Jan\test\" 'The file path
    Application.ScreenUpdating = True
    On Error Resume Next
    Set xObjFS = CreateObject("Scripting.FileSystemObject")
    xStr = xPDFPath & xPDFName & ".pdf"
    xNum = 1
    If xObjFS.FileExists(xStr) Then
    xResponse = MsgBox("The file already exists, do you want to overwrite it?", vbYesNo, "www.extendoffice.com", "", 0)
       If xResponse <> vbYes Then
       Exit Sub
      End If
    End If
    Application.ScreenUpdating = False
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
            FileName:=xStr, _
            OpenAfterPublish:=False
    Application.ScreenUpdating = True
End Sub
Não há comentários postados aqui ainda

Siga-nos

Copyright © 2009 - www.extendoffice.com. | Todos os direitos reservados. Distribuído por ExtendOffice. | | | Mapa do site
Microsoft e o logotipo do Office são marcas comerciais ou marcas registradas da Microsoft Corporation nos Estados Unidos e / ou em outros países.
Protegido por Sectigo SSL