Clever-Excel-Forum

Normale Version: Button um Tabelle als PDF zuspeichern
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

ich bin gerade am Verzweifeln. Ich suche seit einigen Tagen nach dem Code um einen Button zu erstellen mit welchem ich eine Tabelle als PDF speichern kann. Ich hab leider nichts gefunden was bei mir funktioniert und meine bescheidenen Kenntnisse helfen mir auch nicht weiter Sad

Ich habe eine Worksheet mit 3 Tabellen.
Tabelle3 soll mit einem Klick auf einen Button sowohl als PDF gespeichert werden.
Ich würde gerne den Speicherort angeben (in dem Makro)
sowie den Dateinamen, welchen er sich selber zusammenbasteln soll aus den Werten A1 und B2

Ich komm einfahc nicht weiter und bin total am Verzweifeln...
Excel 365 habe ich Smile

Würde mich sehr über Hilfe freuen.
Hallo Piotor,

mal schnell aufgezeichnet und angepasst:

Code:
Sub Makro1()
'Variablendeklarationen
'String
Dim strPfad$
'Pfad ueber Inputbox eingeben
'Keine Pruefung, ob Pfad korrekt angegeben wurde!
    strPfad = InputBox("Pfad eingeben - mit abschließendem Backslash", "Eingabe Pfad")
'Aktives Blatt als PDF speichern mit Excel-Speichern unter
'Dateiname aus A1 und B2
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        strPfad & Cells(1, 1).Value & Cells(2, 2).Value & ".pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
        False
End Sub
Oh super, das macht genau das, was ich möchte Smile
Habe es noch ein wenig verändert, dass der Pfad Fix ist und so ist es jetzt perfekt

Code:
Sub Drucken()
Dim strPfad$
    strPfad = "C:\Users\PFAD\"

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strPfad & "RN_" & Cells(10, 4).Value & "_" & Cells(6, 1) & ".pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
        False
End Sub


Was ich jetzt noch brauche ist nur noch ein Ausdruck über den Standarddrucker in der gleichen Funktion und alles ist super Smile))

Standard mit d, ist ja keine Fahne!
Moderator
[Bild: smilie.php?smile_ID=1810]
Hallo Piotr,

... auch wieder aufgezeichnet:

Code:
Sub Makro1()
'
' Makro1 Makro
'
'
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
        IgnorePrintAreas:=False
End Sub
Achso. Sry
ich hab das selber schon gemacht gehabt war nur mein Gedankengang den ich hier gelassen habe.
Tut mir leid, wenn dies nicht ersichtlich warBlushBlush

Trotzdem vielen dank Smile
Hmm, Hallo nochmal.

Ich hab jetzt versucht das Makro so zu erweitern, dass es das aktuelle Tabellenblat gleichzeitig auch noch Abspeichert und zwar im selben Ordner. Hat aber nicht funktioniert und ich grübel jetzt schon eine ganze Weile warum nicht.

Code:
Sub Drucken_AN()
Dim strPfad$

    strPfad = "Pfadname\"

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strPfad & Cells(11, 4).Value & "_AN_0" & Cells(10, 4) & ".pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
        False
'
ActiveSheet.Copy
ActiveWorkbook.SaveAs Filename:=“strPfad & Cells(11, 4).Value & "_AN_0" & Cells(10, 4) & „.xlsm“

End Sub

Also das PDF klappt ja wie gewünscht nur wie bekomm ich es hin, dass er die copy nicht öffnet - er macht nämlich eine neue excel auf - sondern es einfach in dem gewünschten Ordner ablegt.

Grüße

Code strukturiert dargestellt durch 3. Button von rechts im Beitragsformular: #
photo Raute_zps3ee56209.jpg
Moderator
[Bild: smilie.php?smile_ID=1810]
Hallo Piotor,

nimm mal statt SaveAs dann SaveCopyAs, dann sollte Excel tun, was Du möchtest.