Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Als PDF speichern mit Auswahl

Als PDF speichern mit Auswahl
24.07.2014 08:22:37
Ben
Hallo,
Ich habe zurzeit folgenden Code, der mir die Exceldatei als PDF abspeichert, allerdings ist dadurch auch der Speicherort direkt bestimmt:
    ChDir "D:\Users\csd90075\Desktop"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"D:\Users\csd90075\Desktop\Spezifikation_Stickstofftafel_rev06.pdf", Quality _
:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
Ich möchte aber, dass der Benutzer den Speicherort frei wählen kann, also per Dialogfenster.
Ich habe vorher versucht mit folgendem Code das ganze zu realisieren, allerdings habe ich dabei das Problem, dass die aktuelle Exceldatei dann als PDF offen ist, allerdings dann komischerweise nicht mit Adobe Reader, sondern weiterhin in Excel (der Name der Exceldatei ganz oben ändert sich von Beispiel.xlsm zu Beispiel_12314.PDF). Ich möchte allerdings nur, dass die Exceldatei offen bleibt und die davon erzeugte PDF abgespeichert wird, ohne zu öffnen.
Hier der Code:
Dim SaveAsDlg As FileDialog
Set SaveAsDlg = Application.FileDialog(msoFileDialogSaveAs)
With SaveAsDlg
.InitialView = msoFileDialogViewList
.InitialFileName = "G:\Bestellspezifikation_" & Cells(4, 2)
=Vorschlag für Dialog"
.FilterIndex = 25
.Show
.Execute
End With
Der Name soll weiterhin aus dem Befehl gezogen werden.
Besten Gruß und schonmal vielen Dank,
Ben Dover

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Als PDF speichern mit Auswahl
24.07.2014 08:33:25
Ben
Ok, am besten ist es, wenn man es selbst hinbekommt.
Hier meine funktionierende Lösung:
Sub SaveAsPDF()
Dim varFilename As Variant
varFilename = Application.GetSaveAsFilename( _
InitialFileName:="G:\Bestellspezifikation_" & Cells(4, 2), _
FileFilter:="PDF (*.pdf), *.pdf", _
Title:="als PDF speichern")
If varFilename  False Then
ThisWorkbook.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=varFilename
End If
End Sub

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Excel-Datei als PDF speichern: So wählst du den Speicherort aus


Schritt-für-Schritt-Anleitung

  1. Öffne Excel und aktiviere das VBA-Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Erstelle ein neues Modul:

    • Klicke mit der rechten Maustaste auf dein Projekt im Projektfenster und wähle Einfügen > Modul.
  3. Füge den folgenden Code ein:

    Sub SaveAsPDF()
       Dim varFilename As Variant
       varFilename = Application.GetSaveAsFilename( _
           InitialFileName:="Bestellspezifikation_" & Cells(4, 2), _
           FileFilter:="PDF (*.pdf), *.pdf", _
           Title:="Als PDF speichern")
       If varFilename <> False Then
           ThisWorkbook.ExportAsFixedFormat _
           Type:=xlTypePDF, _
           Filename:=varFilename
       End If
    End Sub
    • Dieser Code öffnet ein Dialogfeld, in dem der Benutzer den Speicherort für die PDF-Datei auswählen kann.
  4. Führe das Makro aus:

    • Kehre zu Excel zurück, drücke ALT + F8, wähle SaveAsPDF aus und klicke auf Ausführen.
  5. Wähle den Speicherort:

    • Ein Dialogfeld öffnet sich, in dem du den gewünschten Speicherort für die PDF-Datei auswählen kannst.

Häufige Fehler und Lösungen

  • Fehler: PDF öffnet sich in Excel:

    • Wenn du das PDF nicht in Adobe Reader, sondern in Excel siehst, stelle sicher, dass du den Export-Befehl korrekt verwendest. Das oben genannte Makro sollte das Problem lösen.
  • Fehler: Dialogfeld erscheint nicht:

    • Überprüfe, ob das Makro korrekt in einem Modul gespeichert ist und ob du die Ausführung von Makros in deinen Excel-Einstellungen erlaubt hast.

Alternative Methoden

  • Excel Arbeitsblatt als PDF speichern:

    • Du kannst auch direkt über die Excel-Oberfläche speichern, indem du Datei > Speichern unter wählst und das Format auf PDF änderst.
  • Excel Diagramm exportieren als PDF:

    • Um nur ein Diagramm als PDF zu speichern, wähle das Diagramm aus, gehe auf Datei > Speichern unter und wähle PDF.

Praktische Beispiele

  • Beispiel für das Speichern eines Bereichs:

    ActiveSheet.Range("A1:D20").ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\DeinPfad\Auswahl.pdf"
    • Dieser Befehl speichert nur den Bereich A1:D20 als PDF.
  • Diagramm als PDF speichern:

    Charts("Diagramm1").ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\DeinPfad\Diagramm.pdf"
    • Dieses Beispiel exportiert ein Diagramm als PDF.

Tipps für Profis

  • Verwende Variablen für Dateinamen:

    • Um den Dateinamen dynamisch zu gestalten, kannst du Werte aus Zellen einfügen, wie im obigen Beispiel gezeigt.
  • Automatisiere den Prozess:

    • Kombiniere das PDF-Speichern mit anderen Automatisierungen, wie z.B. das Erstellen eines Serienbriefs in PDF, um Zeit zu sparen.

FAQ: Häufige Fragen

1. Wie kann ich mehrere Arbeitsblätter als PDF speichern? Du kannst das Makro anpassen, um mehrere Arbeitsblätter als PDF zu exportieren, indem du eine Schleife über die Arbeitsblätter verwendest.

2. Kann ich das PDF auch in einem bestimmten Format speichern? Ja, du kannst das PDF-Format über die Eigenschaften des ExportAsFixedFormat-Befehls anpassen.

3. Was mache ich, wenn ich die PDF nicht finden kann? Vergewissere dich, dass du den richtigen Speicherort im Dialogfeld ausgewählt hast und überprüfe deinen “Dokumente”-Ordner, falls du nichts anderes ausgewählt hast.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige