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

Come utilizzare il pulsante di comando per salvare il foglio di lavoro attivo come file PDF in Excel?

Mentre lavori in Microsoft Excel, potresti dover affrontare il problema di salvare il foglio di lavoro attivo come file PDF. In questo articolo, puoi imparare come salvare il foglio di lavoro attivo come file PDF con codice VBA tramite un pulsante di comando. E se desideri anche salvare un intervallo o ciascun foglio di lavoro nella cartella di lavoro attiva come singolo file PDF, anche questo articolo può aiutarti.

Utilizzare il pulsante di comando per salvare il foglio di lavoro attivo come file PDF con codice VBA
Salva facilmente attivo o ogni foglio di lavoro come singolo file PDF con Kutools per Excel


Utilizzare il pulsante di comando per salvare il foglio di lavoro attivo come file PDF con codice VBA

È possibile eseguire il seguente codice VBA per salvare un foglio di lavoro attivo come file PDF facendo clic su un pulsante di comando. Si prega di fare quanto segue.

1. Innanzitutto, è necessario creare una cartella denominata PDF per salvare il nuovo file PDF convertito. Qui creo questa cartella nel mio disco locale (C :).

2. Inserire un pulsante di comando facendo clic su Costruttori > inserire > Pulsante di comando (controllo ActiveX). Vedi screenshot:

2. Quindi disegnare un pulsante di comando nel foglio di lavoro necessario per aggiungere nuove righe, fare clic con il pulsante destro del mouse sul pulsante di comando e fare clic Proprietà dal menu di scelta rapida.

3. Nel Proprietà finestra di dialogo, immettere il testo visualizzato del pulsante di comando nel file Didascalia scatola sotto il Classificato scheda e quindi chiudere la finestra di dialogo.

Puoi vedere che il testo visualizzato del pulsante di comando è cambiato come mostrato nell'immagine sottostante.

4. Fare nuovamente clic con il pulsante destro del pulsante di comando e quindi scegliere Visualizza codice dal menu di scelta rapida.

5. In apertura Microsoft Visual Basic, Applications Edition finestra, sostituire il codice originale nella finestra del codice con il seguente codice VBA.

Codice VBA: pulsante di comando per salvare il foglio di lavoro attivo come PDF

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

Note:: Nel codice, CommandButton1 è il nome del pulsante di comando che utilizzerai per salvare il foglio attivo come file PDF. "C: \ PDF \ Export.pdf" è il percorso e il nome del file PDF di salvataggio.

6. premi il altro + Q contemporaneamente i tasti per chiudere il file Microsoft Visual Basic, Applications Edition finestra. Quindi spegnere il Modalità di progettazione sotto il Costruttori scheda.

Ora, fai clic sul pulsante di comando, il foglio di lavoro attivo verrà salvato come file PDF denominato Esporta e si trova nella posizione specificata.


Salva ogni foglio di lavoro come singolo file PDF della cartella di lavoro attiva con Kutools per Excel

Qui consiglio il Cartella di lavoro divisa utilità di Kutools for Excel per salvare facilmente il foglio di lavoro attivo come file PDF. Inoltre, puoi anche salvare ogni foglio di lavoro nella cartella di lavoro corrente come singolo file PDF con questa utility.

Prima di applicare Kutools for Excel, Per favore scaricalo e installalo prima.

1. Nella cartella di lavoro è necessario salvare ogni foglio di lavoro come singolo file PDF, quindi fare clic su Kutools Plus > Cartella di lavoro > Cartella di lavoro divisa. Vedi screenshot:

2. Nel Cartella di lavoro divisa finestra di dialogo, configurare come segue:

2.1) Controlla solo il nome del foglio attivo nel file Nome del foglio di lavoro scatola;
2.2) Seleziona PDF (* .pdf) opzione dal Salva come tipo menu `A tendina;
2.3) Fare clic su Diviso pulsante, quindi a Seleziona cartella si apre la finestra di dialogo, specificare una cartella in cui salvare il file PDF;

Quindi il foglio di lavoro selezionato viene salvato immediatamente come file PDF.

Note:

1. È possibile selezionare più nomi di fogli di lavoro nella casella Nome foglio di lavoro per salvarli come file pdf singoli contemporaneamente;
2. Ad eccezione del salvataggio del foglio di lavoro come file PDF, è possibile salvare i fogli di lavoro come txt. o csv. file di cui hai bisogno.

  Se vuoi avere una prova gratuita (30-day) di questa utilità, fare clic per scaricarlo, quindi andare ad applicare l'operazione secondo i passaggi precedenti.


Demo: salva la selezione o ogni foglio di lavoro come PDF con Kutools per Excel


Articoli correlati:


I migliori strumenti per la produttività in ufficio

Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%

  • Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
  • Bar Super Formula (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
  • Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
  • Più di 300 potenti funzionalità. Supporta Office/Excel 2007-2021 e 365. Supporta tutte le lingue. Facile implementazione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.
scheda kte 201905

Scheda Office porta l'interfaccia a schede a Office e semplifica notevolmente il lavoro

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!
fondo officetab
Commenti (33)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Questo commento è stato fatto dal moderatore sul sito
Ciao, come si potrebbe consentire all'utente di inserire il nome del file invece di "Export.pdf"? Grazie, Ian
Questo commento è stato fatto dal moderatore sul sito
Sub Salva come PDF()
Aggiornamento dello schermo dell'applicazione = falso
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
Nome file:=Application.InputBox ("Inserisci nome file")

strExcelPath = "H:\I miei documenti"

Application.ScreenUpdating = True
End Sub
Questo commento è stato fatto dal moderatore sul sito
Ho una richiesta simile Voglio che il file abbia lo stesso nome di una cella particolare nella scheda, IE: G19 (questo è il numero di fattura e voglio che il file venga salvato come PDF con quel nome)? . Sono riuscito a far funzionare export.pdf ma questo non funzionerà su più salvataggi. Qualsiasi pensiero grazie
Questo commento è stato fatto dal moderatore sul sito
Buon Giorno,
Il seguente codice VBA può aiutarti a risolvere il problema. Seleziona la cella G19 nella finestra di dialogo Kutoos per Excel che si apre dopo aver eseguito il codice. Grazie per il tuo commento.

Private Sub CommandButton1_Click ()
Dim xRg come intervallo
Dim xName come stringa
On Error Resume Next
Application.ScreenUpdating = False
Set xRg = Application.InputBox("Seleziona la cella a cui darai il nome del PDF con il valore della cella:", "Ktools for Excel", Selection.Address, , , , , 8)
Se xRg non è niente, esci da Sub
xNome = xRg(1).Valore
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
Nome file:="C:\PDF\" & xNome & ".pdf", _
OpenAfterPublish: = False
Application.ScreenUpdating = True
End Sub
Questo commento è stato fatto dal moderatore sul sito
Ho cambiato il percorso dell'unità D, ma non viene salvato nell'unità D. Cosa fare?
Questo commento è stato fatto dal moderatore sul sito
Ciao Akshay MN,
Se hai modificato il percorso sopra all'unità D, assicurati che sia presente una cartella denominata PDF nell'unità D.
Se vuoi solo salvare il file nell'unità D senza creare una sottocartella, usa questo percorso della cartella: "C:\" & xName & ".pdf"
Questo commento è stato fatto dal moderatore sul sito
Posso convertire i miei file in PDF ora con un pulsante di comando, ma posso anche ottenere la stessa funzione per consentire un nome diverso a ciascun file; basato su una struttura numerica esistente?
Questo commento è stato fatto dal moderatore sul sito
Ciao Randy,
Scusa se non posso aiutarti con questo, benvenuto a postare qualsiasi domanda nel nostro forum: https://www.extendoffice.com/forum.html per ottenere più supporti Excel dal nostro professionista.
Questo commento è stato fatto dal moderatore sul sito
MOSTRA l'errore di runtime '1004'
Questo commento è stato fatto dal moderatore sul sito
Ciao Nzee,
Ho bisogno di conoscere la tua versione di Excel. Grazie per il tuo commento.
Questo commento è stato fatto dal moderatore sul sito
per favore incolla la codifica per il pulsante Salva come pdf in Microsoft Excel
Questo commento è stato fatto dal moderatore sul sito
Come posso farlo per MS Word? Ho un sacco di domande con le opzioni dei pulsanti di opzione come risposte. Quindi voglio creare un pulsante di comando per emettere le domande con le risposte selezionate solo su un altro documento Word. Come faccio a fare questo? Un codice aiuterebbe davvero! Ti mando via email il documento se ne hai bisogno. Grazie!
Questo commento è stato fatto dal moderatore sul sito
Buona giornata,
Mi dispiace non poterti aiutare con quello ancora.
Questo commento è stato fatto dal moderatore sul sito
Sub ZapiszPDF()
Dim sNazwaPliku come stringa

sNazwaPliku = ActiveSheet.Name

Application.Dialogs(xlDialogSaveAs).Mostra sNazwaPliku, 57

End Sub
Questo commento è stato fatto dal moderatore sul sito
ho seguito il codice, questo è quello che ho:

Private Sub CommandButton2_Click ()
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
Nome file:=Intervallo("P2"), _
OpenAfterPublish:=Vero
Application.ScreenUpdating = True
End Sub

ho bisogno del file da salvare nella posizione in cui si trova il file originale. anche bisogno di una copia del file excel per salvare anche con lo stesso nome.
Questo commento è stato fatto dal moderatore sul sito
Ciao Matt Bentley,
Il codice funziona perfettamente. Grazie per aver condiviso.
Questo commento è stato fatto dal moderatore sul sito
Hallo,

kann jemand mir helfen?

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

Private Sub CommandButton1_Click ()
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
Nome file:="C:\PDF\Esporta.pdf", _
OpenAfterPublish: = False
Application.ScreenUpdating = True
End Sub

Grazie
Questo commento è stato fatto dal moderatore sul sito
Hallo,

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


Private Sub CommandButton1_Click ()
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
Nome file:="c:/" & G3 & ".pdf", _
OpenAfterPublish: = False
Application.ScreenUpdating = True
End Sub
Questo commento è stato fatto dal moderatore sul sito
Ciao Sasha,
Il codice seguente può aiutare. Prima di applicare il codice, cambia 'C:\Utenti\Win10x64Test\Documenti\PDF' nella quarta riga al percorso della cartella di destinazione.
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
Questo commento è stato fatto dal moderatore sul sito
Что это за кнопка - "другой" + Q клавиши одновременно" ?
Questo commento è stato fatto dal moderatore sul sito
Ciao Diana,
È il tasto "Alt" sulla tastiera. Microsoft Excel consente agli utenti di premere i tasti "Alt" + "Q" per chiudere la finestra di Microsoft Visual Basic, Applications Edition e tornare al foglio di lavoro.
Questo commento è stato fatto dal moderatore sul sito
Goededag

is het mogelijk om een ​​filmpje of een voorbeeld excelblad te maken voor de Command-Knop Om Een ​​Activief Werkblad Op Te Slaan Als PDF-Bestand Met VBA-Code.
kom er niet helemaal uit met de codes.
grazie alvast
Questo commento è stato fatto dal moderatore sul sito
himax,
Scusa non capisco cosa intendi. Potrebbe essere necessario allegare uno screenshot di ciò che si sta tentando di eseguire. Ci dispiace per l'inconvenienza.
Questo commento è stato fatto dal moderatore sul sito
Ciao Team,

Mi chiedevo solo se qualcuno potesse aiutare a cambiare la destinazione del file creato sul desktop di qualsiasi utente? La mia azienda non consente l'accesso a C: quindi lo script non funziona.

MOLTI MOLTI MOLTI grazie!
Questo commento è stato fatto dal moderatore sul sito
Ciao Ben Stoddart,
Devi solo aprire qualsiasi cartella sul desktop e copiare il percorso della cartella nella casella dell'indirizzo, quindi sostituire il percorso della cartella nel codice VBA con il percorso che hai copiato.
Ecco la nuova riga del nome file (si prega di sostituire il nome utente con il proprio nome utente), Esporta.pdf è il nome e l'estensione del file PDF:
Nomefile:="C:\Utenti\Nome utente\Desktop\PDF\Esporta.pdf", _
Questo commento è stato fatto dal moderatore sul sito
Ogni volta che lo eseguo, salva un PDF sul mio disco locale in cui sono stati salvati i fogli Excel, come posso impedire il salvataggio automatico?

Private Sub CommandButton1_Click ()
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
OpenAfterPublish:=Vero
Application.ScreenUpdating = True
End Sub
Questo commento è stato fatto dal moderatore sul sito
Quando eseguo il seguente, crea automaticamente una versione locale del PDF: come posso impedire che venga salvato automaticamente?

Private Sub CommandButton1_Click ()
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
OpenAfterPublish:=Vero
Application.ScreenUpdating = True
End Sub
Questo commento è stato fatto dal moderatore sul sito
Ciao James,
Vuoi far apparire una finestra per selezionare una cartella per salvare manualmente il file PDF?
Questo commento è stato fatto dal moderatore sul sito
Ciao Crystal, idealmente sì, quindi posso scegliere dove salvare il PDF.
Questo commento è stato fatto dal moderatore sul sito
H Giacomo,

Il seguente codice VBA può aiutarti a risolvere il problema.
Note:: non è possibile gestire contemporaneamente la destinazione e il nome del file. Dopo aver aggiunto il seguente codice VBA, quando fai clic sul pulsante, verrà visualizzata una finestra di dialogo per selezionare una cartella di destinazione. Dopo aver selezionato una cartella di destinazione, verrà visualizzata una finestra per dare un nome al file 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
Questo commento è stato fatto dal moderatore sul sito
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?
Questo commento è stato fatto dal moderatore sul sito
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?


Private Sub CommandButton1_Click ()
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Tipo:=xlTypePDF, _
Filename:="X:\firmen\Buchhaltung\Rechnungs-Kopie_Ackermann Service GmbH\2022\RK-Abrechnung\" & ActiveSheet.Range("G1") & ".pdf", _
OpenAfterPublish:=Vero
Application.ScreenUpdating = True
End Sub
Questo commento è stato fatto dal moderatore sul sito
Ciao Sasha,
Il seguente codice VBA può aiutare. Si prega di fare un tentativo.

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
Non ci sono ancora commenti pubblicati qui
Lasciate i vostri commenti
Pubblicazione come ospite
×
Valuta questo post:
0   Personaggi
Posizioni suggerite

Seguici

Copyright © 2009 - www.extendoffice.com. | Tutti i diritti riservati. Offerto da ExtendOffice, | Mappa del sito
Microsoft e il logo Office sono marchi o marchi registrati di Microsoft Corporation negli Stati Uniti e / o in altri paesi.
Protetto da Sectigo SSL