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

Hoe de Command-knop te gebruiken om een ​​actief werkblad op te slaan als PDF-bestand in Excel?

Wanneer u in Microsoft Excel werkt, kunt u het probleem tegenkomen om een ​​actief werkblad op te slaan als pdf-bestand. In dit artikel leert u hoe u een actief werkblad kunt opslaan als PDF-bestand met VBA-code via een opdrachtknop. En als u ook een bereik of elk werkblad in een actieve werkmap als afzonderlijk PDF-bestand wilt opslaan, kan dit artikel u ook helpen.

Gebruik de Command-knop om een ​​actief werkblad op te slaan als PDF-bestand met VBA-code
Bewaar eenvoudig actief of elk werkblad als afzonderlijk PDF-bestand met Kutools voor Excel


Gebruik de Command-knop om een ​​actief werkblad op te slaan als PDF-bestand met VBA-code

U kunt de volgende VBA-code uitvoeren om een ​​actief werkblad als PDF-bestand op te slaan door op een opdrachtknop te klikken. Ga als volgt te werk.

1. Ten eerste moet u een map met de naam PDF maken om uw nieuwe geconverteerde PDF-bestand op te slaan. Hier maak ik deze map op mijn lokale schijf (C :).

2. Voer een Command-knop in door op te klikken Ontwikkelaar > Invoegen > Commandoknop (ActiveX-besturingselement). Zie screenshot:

2. Teken vervolgens een Command-knop in het werkblad dat u nodig hebt om nieuwe rijen toe te voegen, klik met de rechtermuisknop op de Command-knop en klik Vastgoed vanuit het rechtsklikmenu.

3. In de Vastgoed dialoogvenster, voert u de weergegeven tekst van de Command-knop in het Onderschrift doos onder de Gecategoriseerd tabblad en sluit vervolgens het dialoogvenster.

U kunt zien dat de weergegeven tekst van de Command-knop is gewijzigd zoals onderstaand screenshot.

4. Klik nogmaals met de rechtermuisknop op de Command-knop en klik vervolgens op Bekijk code vanuit het rechtsklikmenu.

5. In de opening Microsoft Visual Basic voor toepassingen venster, vervangt u de originele code in het codevenster door de volgende VBA-code.

VBA-code: opdrachtknop om een ​​actief werkblad als PDF op te slaan

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

Opmerking:: In de code is CommandButton1 de naam van de Command Button die u gebruikt om het actieve blad op te slaan als PDF-bestand. "C: \ PDF \ Export.pdf" is het pad en de naam van uw opgeslagen PDF-bestand.

6. druk de anders + Q toetsen tegelijk om het Microsoft Visual Basic voor toepassingen venster. Schakel vervolgens het Ontwerpmodus onder de Ontwikkelaar Tab.

Klik nu op de Command-knop, het actieve werkblad wordt opgeslagen als een PDF-bestand met de naam Export en bevindt zich op de opgegeven locatie.


Sla elk werkblad op als afzonderlijk PDF-bestand van een actieve werkmap met Kutools voor Excel

Beveel hier de Werkmap splitsen nut van Kutools for Excel om een ​​actief werkblad eenvoudig op te slaan als een pdf-bestand. Bovendien kunt u met dit hulpprogramma ook elk werkblad in de huidige werkmap opslaan als afzonderlijk PDF-bestand.

Voor het aanvragen Kutools for Excel, Dan kunt u download en installeer het eerst.

1. In de werkmap moet u elk werkblad als afzonderlijk PDF-bestand opslaan en vervolgens op klikken Koetools Plus > werkboek > Werkmap splitsen. Zie screenshot:

2. In de Werkmap splitsen dialoogvenster, configureer dan als volgt:

2.1) Controleer alleen de actieve bladnaam in het Werkbladnaam doos;
2.2) Selecteer Pdf (* .pdf) optie van de Opslaan als type keuzelijst;
2.3) Klik op de Split knop, dan een map selecteren dialoogvenster verschijnt, specificeer een map om het PDF-bestand op te slaan;

Vervolgens wordt het geselecteerde werkblad onmiddellijk opgeslagen als PDF-bestand.

Opmerkingen:

1. U kunt meerdere werkbladnamen aanvinken in het vak Werkbladnaam om ze in één keer als afzonderlijk pdf-bestand op te slaan;
2. Behalve het opslaan van een werkblad als pdf-bestanden, kunt u werkbladen opslaan als txt. of csv. bestand als je nodig hebt.

  Als u een gratis proefperiode wilt hebben (30-dag) van dit hulpprogramma, klik om het te downloaden, en ga vervolgens de bewerking toepassen volgens de bovenstaande stappen.


Demo: sla de selectie of elk werkblad op als PDF met Kutools voor Excel


Gerelateerde artikelen:


De beste tools voor kantoorproductiviteit

Kutools voor Excel lost de meeste van uw problemen op en verhoogt uw productiviteit met 80%

  • visfuik: Snel invoegen complexe formules, grafieken en alles wat je eerder hebt gebruikt; Versleutel cellen met wachtwoord; Maak een mailinglijst en stuur e-mails ...
  • Super Formula-balk (bewerk eenvoudig meerdere regels tekst en formule); Lay-out lezen (gemakkelijk grote aantallen cellen lezen en bewerken); Plakken in gefilterd bereik...
  • Voeg cellen / rijen / kolommen samen zonder gegevens te verliezen; Gespleten cellen inhoud; Combineer dubbele rijen / kolommen... Voorkom dubbele cellen; Vergelijk Ranges...
  • Selecteer Dupliceren of Uniek Rijen; Selecteer lege rijen (alle cellen zijn leeg); Super zoeken en fuzzy zoeken in veel werkboeken; Willekeurige selectie ...
  • Exacte kopie Meerdere cellen zonder de formuleverwijzing te wijzigen; Maak automatisch verwijzingen naar meerdere bladen; Plaats kogels, Selectievakjes en meer ...
  • Extraheer tekst, Tekst toevoegen, Verwijderen op positie, Ruimte verwijderen; Paging-subtotalen maken en afdrukken; Converteren tussen celinhoud en opmerkingen...
  • Super filter (bewaar en pas filterschema's toe op andere bladen); Geavanceerd sorteren per maand / week / dag, frequentie en meer; Speciaal filter door vet, cursief ...
  • Combineer werkmappen en werkbladen; Tabellen samenvoegen op basis van sleutelkolommen; Gegevens splitsen in meerdere bladen; Batch Converteer xls, xlsx en PDF...
  • Meer dan 300 krachtige functies. Ondersteunt Office / Excel 2007-2021 en 365. Ondersteunt alle talen. Eenvoudig te implementeren in uw onderneming of organisatie. Volledige functies Gratis proefperiode van 30 dagen. 60 dagen geld-terug-garantie.
kte tabblad 201905

Office-tabblad Brengt een interface met tabbladen naar Office en maakt uw werk veel gemakkelijker

  • Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in, Publisher, Access, Visio en Project.
  • Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster in plaats van in nieuwe vensters.
  • Verhoogt uw productiviteit met 50% en vermindert honderden muisklikken voor u elke dag!
officetab onderkant
Heb je vragen? Stel ze hier. (33)
Nog geen beoordelingen. Beoordeel als eerste!
Deze opmerking is gemaakt door de moderator op de site
Hallo, Hoe zou men de gebruiker toestaan ​​om de bestandsnaam in te voeren in plaats van "Export.pdf"? Bedankt, Ian
Deze opmerking is gemaakt door de moderator op de site
Sub OpslaanAlsPDF()
Application.Screen Update = False
ActiveSheet.exportasfixedFormat Type: = xltyPepdf, _
Bestandsnaam:=Applicatie.InputBox("Voer bestandsnaam in")

strExcelPath = "H:\Mijn documenten"

Application.ScreenUpdating = True
End Sub
Deze opmerking is gemaakt door de moderator op de site
Ik heb een soortgelijk verzoek. Ik wil dat het bestand dezelfde naam krijgt als een bepaalde cel op het tabblad, IE: G19 (Dit is het factuurnummer en ik wil dat het bestand als PDF met die naam wordt opgeslagen)? . Het is me gelukt om de export.pdf werkend te krijgen, maar dit gaat niet werken bij meerdere saves. Eventuele gedachten, bedankt
Deze opmerking is gemaakt door de moderator op de site
Good Day,
De volgende VBA-code kan u helpen het probleem op te lossen. Selecteer cel G19 in het pop-upvenster Kutoos voor Excel nadat de code is uitgevoerd. Bedankt voor je reactie.

Private Sub CommandButton1_Click ()
Dim xRg als bereik
Dim xName als string
On Error Resume Next
Application.ScreenUpdating = False
Set xRg = Application.InputBox ("Selecteer de cel die u de PDF een naam geeft met de celwaarde:", "Kutools for Excel", Selection.Address, , , , , 8)
Als xRg niets is, sluit dan Sub af
xNaam = xRg(1).Waarde
ActiveSheet.exportasfixedFormat Type: = xltyPepdf, _
Bestandsnaam:="C:\PDF\" & xNaam & ".pdf", _
OpenAfterPublish: = False
Application.ScreenUpdating = True
End Sub
Deze opmerking is gemaakt door de moderator op de site
Ik heb het pad naar D-schijf gewijzigd, maar het wordt niet opgeslagen in de D-schijf. Wat moeten we doen?
Deze opmerking is gemaakt door de moderator op de site
Hallo Akshay MN,
Als u het bovenstaande pad naar D-schijf hebt gewijzigd, zorg er dan voor dat er een map met de naam PDF in uw D-schijf staat.
Als u het bestand alleen op de D-schijf wilt opslaan zonder een submap aan te maken, gebruik dan dit mappad: "C:\" & xName & ".pdf"
Deze opmerking is gemaakt door de moderator op de site
Ik kan mijn bestanden nu naar PDF converteren met een opdrachtknop, maar kan ik ook dezelfde functie krijgen om elk bestand een andere naam te geven; gebaseerd op een bestaande nummerstructuur?
Deze opmerking is gemaakt door de moderator op de site
Hallo Randy,
Sorry dat ik hier niet mee kan helpen, welkom om elke vraag op ons forum te plaatsen: https://www.extendoffice.com/forum.html om meer Excel-ondersteuning te krijgen van onze professional.
Deze opmerking is gemaakt door de moderator op de site
HET TOONT ​​Runtime-fout '1004'
Deze opmerking is gemaakt door de moderator op de site
Hallo Nzee,
Ik moet uw Excel-versie weten. Bedankt voor je reactie.
Deze opmerking is gemaakt door de moderator op de site
plz plak codering voor opslaan als pdf-knop in microsoft excel
Deze opmerking is gemaakt door de moderator op de site
Hoe doe ik dit voor MS Word? Ik heb een heleboel vragen met keuzerondjes als antwoorden. Dus ik wil een opdrachtknop maken om de vragen met de geselecteerde antwoorden alleen op een ander Word-document uit te voeren. Hoe doe ik dit? Een code zou echt helpen! Ik zal je het document e-mailen als je het nodig hebt. Bedankt!
Deze opmerking is gemaakt door de moderator op de site
Goede dag,
Sorry kan je daar nog niet mee helpen.
Deze opmerking is gemaakt door de moderator op de site
Onder ZapiszPDF()
Dim sNazwaPliku As String

sNazwaPliku = ActiveSheet.Naam

Application.Dialogs(xlDialogSaveAs).Show sNazwaPliku, 57

End Sub
Deze opmerking is gemaakt door de moderator op de site
Ik heb de code gevolgd, dit is wat ik heb:

Private Sub CommandButton2_Click ()
Application.ScreenUpdating = False
ActiveSheet.exportasfixedFormat Type: = xltyPepdf, _
Bestandsnaam:=Bereik("P2"), _
OpenAfterPublish:=Waar
Application.ScreenUpdating = True
End Sub

ik heb het bestand nodig om op te slaan op de locatie waar het originele bestand zich bevindt. heb ook een kopie van het Excel-bestand nodig om ook met dezelfde naam op te slaan.
Deze opmerking is gemaakt door de moderator op de site
Hallo Matt Bentley,
De code werkt perfect. Dank je wel voor het delen.
Deze opmerking is gemaakt door de moderator op de site
Hallo,

kan je en mir helfen?

Ik weet niet of die Zeilen en een andere manier van doen, als de Blatt een Zellenwert als Datum gespeichert wird:

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

dank u
Deze opmerking is gemaakt door de moderator op de site
Hallo,

ich nutze diese Zeilen und möchte das eine Zelle als Dateiname verwenden wird!
Kan je een tip gebruiken?


Private Sub CommandButton1_Click ()
Application.ScreenUpdating = False
ActiveSheet.exportasfixedFormat Type: = xltyPepdf, _
Bestandsnaam:="c:/" & G3 & ".pdf", _
OpenAfterPublish: = False
Application.ScreenUpdating = True
End Sub
Deze opmerking is gemaakt door de moderator op de site
Hallo Sasha,
De volgende code kan helpen. Voordat u de code toepast, wijzigt u 'C:\Gebruikers\Win10x64Test\Documenten\PDF' in de vierde regel naar uw eigen doelmappad.
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
Deze opmerking is gemaakt door de moderator op de site
Что это за кнопка - "другой" + Q клавиши одновременно" ? Не поняла что нажимать, подскажите, пожалуйста
Deze opmerking is gemaakt door de moderator op de site
Hallo Диана,
Het is de "Alt"-toets op uw toetsenbord. Met Microsoft Excel kunnen gebruikers op de toetsen "Alt" + "Q" drukken om het Microsoft Visual Basic for Applications-venster te sluiten en terug te keren naar het werkblad.
Deze opmerking is gemaakt door de moderator op de site
Goededag

is het mogelijk om een ​​filmpje van 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.
bedankt alvast
Deze opmerking is gemaakt door de moderator op de site
Hallo max,
Het spijt me dat ik niet begrijp wat je bedoelt. Mogelijk moet u een screenshot bijvoegen van wat u probeert te doen. Excuses voor het ongemak.
Deze opmerking is gemaakt door de moderator op de site
Hi Team,

Ik vroeg me gewoon af of iemand zou kunnen helpen met het wijzigen van de bestemming van het gemaakte bestand naar het bureaublad van een gebruiker? Mijn bedrijf staat geen toegang toe tot C: dus het script werkt niet.

VEEL VEEL VEEL bedankt!
Deze opmerking is gemaakt door de moderator op de site
Hallo Ben Stoddart,
U hoeft alleen maar een willekeurige map op uw bureaublad te openen en het mappad in het adresvak te kopiëren en vervolgens het mappad in de VBA-code te vervangen door het pad dat u hebt gekopieerd.
Hier is de nieuwe regel Bestandsnaam (vervang de gebruikersnaam door uw eigen gebruikersnaam), Exporteren.pdf is de naam en de bestandsextensie van het PDF-bestand:
Bestandsnaam:="C:\Gebruikers\Gebruikersnaam\Desktop\PDF\Export.pdf", _
Deze opmerking is gemaakt door de moderator op de site
Telkens wanneer ik dit uitvoer, wordt er een pdf opgeslagen op mijn lokale schijf waar de Excel-bladen zijn opgeslagen. Hoe voorkom ik dat dit automatisch wordt opgeslagen?

Private Sub CommandButton1_Click ()
Application.ScreenUpdating = False
ActiveSheet.exportasfixedFormat Type: = xltyPepdf, _
OpenAfterPublish:=Waar
Application.ScreenUpdating = True
End Sub
Deze opmerking is gemaakt door de moderator op de site
Wanneer ik het onderstaande uitvoer, wordt automatisch een lokale versie van de pdf gemaakt - hoe voorkom ik dat deze automatisch wordt opgeslagen?

Private Sub CommandButton1_Click ()
Application.ScreenUpdating = False
ActiveSheet.exportasfixedFormat Type: = xltyPepdf, _
OpenAfterPublish:=Waar
Application.ScreenUpdating = True
End Sub
Deze opmerking is gemaakt door de moderator op de site
Hi James,
Wilt u een pop-upvenster openen om een ​​map te selecteren om het PDF-bestand handmatig op te slaan?
Deze opmerking is gemaakt door de moderator op de site
Hallo Crystal, idealiter ja, dus ik kan dan kiezen waar ik de pdf wil opslaan.
Deze opmerking is gemaakt door de moderator op de site
James,

De volgende VBA-code kan u helpen het probleem op te lossen.
Opmerking:: U kunt de bestemming en de bestandsnaam niet tegelijkertijd verwerken. Nadat u de volgende VBA-code hebt toegevoegd en u op de knop klikt, verschijnt er een dialoogvenster waarin u een bestemmingsmap kunt selecteren. Nadat u een bestemmingsmap hebt geselecteerd, verschijnt er een vak waarin u het PDF-bestand een naam kunt geven.

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
Deze opmerking is gemaakt door de moderator op de site
Als deze tijd en functie zo goed zijn, mijn probleem is nu, sollte diese datums die voorhanden zijn, zullen deze einfach überschrieben!
Wie kan er vermeiden, als er een melding komt, bestaat er een datum en is er een oplossing?
Deze opmerking is gemaakt door de moderator op de site
Als deze tijd en functie zo goed zijn, mijn probleem is nu, sollte diese datums die ze kunnen gebruiken, WIRD diese een van de vele!
Wie kan er vermeiden, als er een melding komt, bestaat er een datum en is er een oplossing?


Private Sub CommandButton1_Click ()
Application.ScreenUpdating = False
ActiveSheet.exportasfixedFormat Type: = xltyPepdf, _
Bestandsnaam:="X:\firmen\Buchhaltung\Rechnungs-Kopie_Ackermann Service GmbH\2022\RK-Abrechnung\" & ActiveSheet.Range("G1") & ".pdf", _
OpenAfterPublish:=Waar
Application.ScreenUpdating = True
End Sub
Deze opmerking is gemaakt door de moderator op de site
Hallo Sasha,
De volgende VBA-code kan helpen. Probeer het alsjeblieft.

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
Er zijn nog geen reacties geplaatst

Volg ons

Copyright © 2009 - www.extendoffice.com. | Alle rechten voorbehouden. Aangedreven door ExtendOffice. | Sitemap
Microsoft en het Office-logo zijn handelsmerken of gedeponeerde handelsmerken van Microsoft Corporation in de Verenigde Staten en / of andere landen.
Beschermd door Sectigo SSL