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

Hur använder jag kommandoknappen för att spara aktivt kalkylblad som PDF-fil i Excel?

När du arbetar i Microsoft Excel kan du möta problemet med att spara aktivt kalkylblad som PDF-fil. I den här artikeln kan du lära dig hur du sparar aktivt kalkylblad som PDF-fil med VBA-kod via en kommandoknapp. Och om du också vill spara ett intervall eller varje kalkylblad i aktiv arbetsbok som enskild PDF-fil kan den här artikeln också hjälpa dig.

Använd kommandoknappen för att spara aktivt kalkylblad som PDF-fil med VBA-kod
Spara enkelt aktivt eller varje kalkylblad som enskild PDF-fil med Kutools för Excel


Använd kommandoknappen för att spara aktivt kalkylblad som PDF-fil med VBA-kod

Du kan köra följande VBA-kod för att spara ett aktivt kalkylblad som PDF-fil genom att klicka på en kommandoknapp. Gör så här.

1. För det första måste du skapa en mapp med namnet PDF för att spara din nya konverterade PDF-fil. Här skapar jag den här mappen på min lokala skiva (C :).

2. Sätt in en kommandoknapp genom att klicka Utvecklare > Insert > Kommandoknapp (ActiveX-kontroll). Se skärmdump:

2. Rita sedan en kommandoknapp till kalkylbladet du behöver för att lägga till nya rader, högerklicka på kommandoknappen och klicka Fastigheter från högerklickmenyn.

3. I Fastigheter dialogrutan, ange den visade texten på kommandoknappen i Bildtext lådan under kategoriseras och stäng sedan dialogrutan.

Du kan se att den visade texten på kommandoknappen ändras enligt nedanstående skärmdump.

4. Högerklicka på kommandoknappen igen och klicka sedan på Visa kod från högerklickmenyn.

5. I öppningen Microsoft Visual Basic för applikationer fönstret, ersätt den ursprungliga koden i kodfönstret med följande VBA-kod.

VBA-kod: Kommandoknapp för att spara aktivt kalkylblad som PDF

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

Anmärkningar: I koden är CommandButton1 kommandoknappens namn som du kommer att använda för att spara aktivt ark som PDF-fil. "C: \ PDF \ Export.pdf" är sökvägen och namnet på din sparande PDF-fil.

6. tryck på andra + Q samtidigt för att stänga Microsoft Visual Basic för applikationer fönster. Stäng sedan av Designläge under Utvecklare fliken.

Klicka nu på kommandoknappen, det aktiva kalkylbladet sparas som en PDF-fil med namnet Exportera och ligger på den angivna platsen.


Spara varje kalkylblad som enskild PDF-fil i aktiv arbetsbok med Kutools för Excel

Här rekommenderar du Dela arbetsbok nytta av Kutools för Excel för att enkelt spara aktivt kalkylblad som en PDF-fil. Dessutom kan du spara varje kalkylblad i aktuell arbetsbok som enskild PDF-fil med det här verktyget.

Innan du ansöker Kutools för ExcelBer ladda ner och installera det först.

1. I arbetsboken måste du spara varje kalkylblad som enskild PDF-fil och klicka sedan på Kutools Plus > Arbetsbok > Dela arbetsbok. Se skärmdump:

2. I Dela arbetsbok dialogrutan, konfigurera följande:

2.1) Kontrollera endast det aktiva arknamnet i Kalkylbladets namn låda;
2.2) Välj PDF (* .pdf) alternativ från Spara som rullgardinsmeny
2.3) Klicka på Split knappen, sedan en Välj mapp dialogrutan dyker upp, ange en mapp för att spara PDF-filen;

Sedan sparas det valda kalkylbladet som PDF-fil omedelbart.

Anmärkningar:

1. Du kan markera flera kalkylarknamn i rutan Kalkylbladets namn för att spara dem som enskilda pdf-filer på en gång.
2. Förutom att spara kalkylblad som pdf-filer kan du spara kalkylblad som txt. eller csv. fil som du behöver.

  Om du vill ha en gratis provperiod (30-dag) för detta verktyg, klicka för att ladda ner den, och gå sedan till för att tillämpa operationen enligt ovanstående steg.


Demo: Spara urval eller varje kalkylblad som PDF med Kutools för Excel


Relaterade artiklar:


De bästa Office-produktivitetsverktygen

Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%

  • återanvändning: Sätt snabbt i komplexa formler, diagram och allt som du har använt tidigare; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
  • Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
  • Sammanfoga celler / rader / kolumner utan att förlora data; Delat cellinnehåll; Kombinera duplicerade rader / kolumner... Förhindra duplicerade celler; Jämför intervall...
  • Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
  • Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
  • Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
  • Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
  • Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
  • Mer än 300 kraftfulla funktioner. Stöder Office / Excel 2007-2021 och 365. Stöder alla språk. Enkel implementering i ditt företag eller organisation. Fullständiga funktioner 30 dagars gratis provperiod. 60 dagars pengarna tillbaka-garanti.
kte-flik 201905

Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
officetab botten
Sortera kommentarer efter
Kommentarer (33)
Inga betyg än. Bli först med att betygsätta!
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, Hur skulle man tillåta användaren att ange filnamnet i motsats till "Export.pdf"? Tack, Ian
Denna kommentar minimerades av moderatoren på webbplatsen
Sub SaveAsPDF()
Application.Screen Update = False
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filnamn:=Application.InputBox("Ange filnamn")

strExcelPath = "H:\Mina dokument"

Application.ScreenUpdating = True
End Sub
Denna kommentar minimerades av moderatoren på webbplatsen
Jag har en liknande begäran Jag vill att filen ska heta samma namn som en viss cell i fliken , IE: G19 (Detta är fakturanumret och jag vill att filen ska sparas som PDF med det namnet) ? . Jag har lyckats få export.pdf att fungera men det här kommer inte att fungera vid flera lagringar. Några tankar tack
Denna kommentar minimerades av moderatoren på webbplatsen
God dag,
Följande VBA-kod kan hjälpa dig att lösa problemet. Välj cell G19 i dialogrutan Kutoos för Excel som dyker upp efter att ha kört koden. Tack för din kommentar.

Privat underkommando-knappen1_Click ()
Dim xRg As Range
Dim xName As String
On Error Resume Next
Application.ScreenUpdating = False
Set xRg = Application.InputBox("Välj cellen du ska namnge PDF:en med cellvärdet:", "Kutools for Excel", Selection.Address, , , , , 8)
Om xRg är ingenting, avsluta Sub
xName = xRg(1).Värde
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filnamn:="C:\PDF\" & xName & ".pdf", _
OpenAfterPublish: = Falskt
Application.ScreenUpdating = True
End Sub
Denna kommentar minimerades av moderatoren på webbplatsen
Jag ändrade sökvägen till D-enheten, men den sparas inte i D-enheten. Vad ska man göra?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Akshay MN,
Om du har ändrat sökvägen ovan till D-enhet, se till att det finns en mapp med namnet PDF i din D-enhet.
Om du bara vill spara filen i D-enheten utan att skapa en undermapp, använd denna mappsökväg: "C:\" & xName & ".pdf"
Denna kommentar minimerades av moderatoren på webbplatsen
Jag kan konvertera mina filer till PDF nu med en kommandoknapp, men kan jag också få samma funktion för att tillåta ett annat namn för varje fil; baserat på en existerande talstruktur?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Randy,
Jag kan tyvärr inte hjälpa till med detta, välkommen att ställa alla frågor i vårt forum: https://www.extendoffice.com/forum.html för att få mer Excel-stöd från vår professionella.
Denna kommentar minimerades av moderatoren på webbplatsen
DET VISAR Körtidsfel '1004'
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Nzee,
Jag behöver veta din Excel-version. Tack för din kommentar.
Denna kommentar minimerades av moderatoren på webbplatsen
snälla klistra in kodning för att spara som pdf-knapp i Microsoft Excel
Denna kommentar minimerades av moderatoren på webbplatsen
Hur gör jag detta för MS Word? Jag har ett gäng frågor med alternativknappsalternativ som svar. Så jag vill skapa en kommandoknapp för att skriva ut frågorna med de valda svaren endast på ett annat word-dokument. Hur gör jag detta? En kod skulle verkligen hjälpa! Jag mailar dig dokumentet om du behöver det. Tack!
Denna kommentar minimerades av moderatoren på webbplatsen
God dag,
Jag kan tyvärr inte hjälpa dig med det än.
Denna kommentar minimerades av moderatoren på webbplatsen
Sub ZapiszPDF()
Dim sNazwaPliku As String

sNazwaPliku = ActiveSheet.Name

Application.Dialogs(xlDialogSaveAs).Visa sNazwaPliku, 57

End Sub
Denna kommentar minimerades av moderatoren på webbplatsen
Jag har följt koden, detta är vad jag har:

Privat underkommando-knappen2_Click ()
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filnamn:=Range("P2"), _
OpenAfterPublish:=Sant
Application.ScreenUpdating = True
End Sub

Jag behöver filen för att spara på den plats där den ursprungliga filen finns. behöver också en kopia av excel-filen för att spara också med samma namn.
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Matt Bentley,
Koden fungerar perfekt. Tack för att du delar.
Denna kommentar minimerades av moderatoren på webbplatsen
Hej,

kann jemand mir helfen?

Ich nutze diese Zeilen and möchte jedoch, das from the Blatt a Zellenwert as Dateiname speichert wird:

Privat underkommando-knappen1_Click ()
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filnamn:="C:\PDF\Export.pdf", _
OpenAfterPublish: = Falskt
Application.ScreenUpdating = True
End Sub

Tack
Denna kommentar minimerades av moderatoren på webbplatsen
Hej,

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


Privat underkommando-knappen1_Click ()
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filnamn:="c:/" & G3 & ".pdf", _
OpenAfterPublish: = Falskt
Application.ScreenUpdating = True
End Sub
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Sasha,
Följande kod kan hjälpa. Innan du använder koden, vänligen ändra 'C:\Users\Win10x64Test\Documents\PDF' på den fjärde raden till din egen målmappssökväg.
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
Denna kommentar minimerades av moderatoren på webbplatsen
Что это за кнопка - "другой" + Q клавиши одновременно" ?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Диана,
Det är "Alt"-tangenten på ditt tangentbord. Microsoft Excel tillåter användare att trycka på tangenterna "Alt" + "Q" för att stänga Microsoft Visual Basic for Applications-fönstret och återgå till kalkylbladet.
Denna kommentar minimerades av moderatoren på webbplatsen
Goededag

är det möjligt att göra en filmpje av ett exemplar av ett excelblad som kan skapas för Command-Knop Om En ​​Actief Werkblad på Te Slaan Som PDF-Bestand Met VBA-Code.
kom är inte helt med koderna.
alvast bedankt
Denna kommentar minimerades av moderatoren på webbplatsen
Hej max,
Förlåt att jag inte förstår vad du menar. Du kan behöva bifoga en skärmdump av vad du försöker göra. Beklagar olägenheten.
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Team,

Undrar bara om någon kan hjälpa till med att ändra destinationen för den skapade filen till någon användares skrivbord? Mitt företag tillåter inte åtkomst till C: så skriptet fungerar inte.

MÅNGA MÅNGA MÅNGA tack!
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Ben Stoddart,
Du behöver bara öppna valfri mapp på skrivbordet och kopiera mappsökvägen i adressrutan, ersätt sedan mappsökvägen i VBA-koden med sökvägen du kopierade.
Här är den nya filnamnsraden (ersätt användarnamnet med ditt eget användarnamn), Export.pdf är namnet och filtillägget för PDF-filen:
Filnamn:="C:\Users\Användarnamn\Desktop\PDF\Export.pdf", _
Denna kommentar minimerades av moderatoren på webbplatsen
När jag kör detta sparar den en PDF till min lokala enhet där excelark sparas, hur stoppar jag detta från att automatiskt spara?

Privat underkommando-knappen1_Click ()
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
OpenAfterPublish:=Sant
Application.ScreenUpdating = True
End Sub
Denna kommentar minimerades av moderatoren på webbplatsen
När jag kör nedanstående skapas en lokal version av PDF-filen automatiskt - hur hindrar jag att detta sparas automatiskt?

Privat underkommando-knappen1_Click ()
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
OpenAfterPublish:=Sant
Application.ScreenUpdating = True
End Sub
Denna kommentar minimerades av moderatoren på webbplatsen
Hej James,
Vill du öppna ett fönster för att välja en mapp för att spara PDF-filen manuellt?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Crystal, helst ja så att jag sedan kan välja var PDF:en ska sparas.
Denna kommentar minimerades av moderatoren på webbplatsen
H James,

Följande VBA-kod kan hjälpa dig att lösa problemet.
Anmärkningar: Du kan inte hantera både destinationen och filnamnet samtidigt. När du har lagt till följande VBA-kod, när du klickar på knappen, dyker en dialogruta upp där du kan välja en målmapp. När du har valt en målmapp kommer en ruta att dyka upp där du kan ge PDF-filen ett namn.

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
Denna kommentar minimerades av moderatoren på webbplatsen
Ich nutze diese Zeilen and das functioniert auch gut, mein Problem ist nur, shoulde this file bereits vorhanden sein, wird diese simple überschrieben!
Wie kan jag undvika, bör du en anmälan komma, Datei existerar bereits och es soll beendet werden?
Denna kommentar minimerades av moderatoren på webbplatsen
Ich nutze diese Zeilen and das functioniert auch gut, mein Problem ist nur, shoulde this file bereits vorhanden sein, WIRD diese simple überschrieben!
Wie kan jag undvika, bör du en anmälan komma, Datei existerar bereits och es soll beendet werden?


Privat underkommando-knappen1_Click ()
Application.ScreenUpdating = False
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filnamn:="X:\firmen\Buchhaltung\Rechnungs-Kopie_Ackermann Service GmbH\2022\RK-Abrechnung\" & ActiveSheet.Range("G1") & ".pdf", _
OpenAfterPublish:=Sant
Application.ScreenUpdating = True
End Sub
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Sasha,
Följande VBA-kod kan hjälpa. Vänligen ge det ett försök.

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
Det finns inga kommentarer här ännu
Lämna dina kommentarer
Postar som gäst
×
Betygsätt detta inlägg:
0   Tecken
Föreslagna platser

Följ oss

Copyright © 2009 - www.extendoffice.com. | Alla rättigheter förbehållna. Drivs av ExtendOffice. | | Sitemap
Microsoft och Office-logotypen är varumärken eller registrerade varumärken som tillhör Microsoft Corporation i USA och / eller andra länder.
Skyddad av Sectigo SSL