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

als PDF speichern
05.08.2015 18:09:47
Christoph
Hallo zusammen
Gerne benötige ich eure Hilfe.
Ich habe eine Arbeitsmappe mit 55 Arbeitsblätter. Gerne möchte ich mit einem Klick ein PDF von all denen Arbeitsblätter erstellen, bei denen in der Zelle A2 ein Wert vorhanden ist.
Dieses PDF soll es mir in den gleichen Ordner speichern, in welcher auch die Excel Datei ist.
Ist dies überhaupt möglich?
Herzliche Grüsse Christoph

Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: als PDF speichern
05.08.2015 18:51:51
AlexG
Hallo Christoph,
so?
Option Explicit
Sub PDF()
Dim vntPDF() As Variant
Dim strFilename As String
Dim i, intWs As Long
Dim wks As Worksheet
intWs = ActiveSheet.Index
strFilename = ThisWorkbook.Path & "\" & ThisWorkbook.Name & ".pdf"
For Each wks In Worksheets
    If Not IsEmpty(wks.Range("A2")) Then
        Redim Preserve vntPDF(i)
        vntPDF(i) = wks.Name
        i = i + 1
    End If
Next
Sheets(vntPDF).Select
ActiveWorkbook.ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strFilename _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=True
Sheets(intWs).Select
End Sub

Gruß
Alex

Anzeige
Korrektur
05.08.2015 19:10:00
AlexG
Hallo Christoph,
ich hatte vergessen die Dateiendung der Excel- Datei zu entfernen
Option Explicit
Sub PDF()
Dim vntPDF() As Variant
Dim strFilename As String
Dim i, lngWs As Long
Dim wks As Worksheet
lngWs = ActiveSheet.Index
strFilename = ThisWorkbook.Path & "\" & Left(ThisWorkbook.Name, _
                    InStr(1, ThisWorkbook.Name, ".") - 1) & ".pdf"
For Each wks In Worksheets
    If Not IsEmpty(wks.Range("A2")) Then
        Redim Preserve vntPDF(i)
        vntPDF(i) = wks.Name
        i = i + 1
    End If
Next
Sheets(vntPDF).Select
ActiveWorkbook.ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strFilename _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=True
Sheets(lngWs).Select
End Sub


Gruß
Alex

Anzeige
AW: Korrektur
05.08.2015 19:17:49
Daniel
Hi
ohne es jetzt getestet zu haben, aber beim normalen Speichern in VBA sollte man die Dateiendung im Dateinamen nicht mit angeben, diese wird automatisch vom System passend zum gewählten FileFormat ergänzt.
würde mich wundern, wenn das beim Speichern als PDF änders wäre.
Gruß Daniel

Anzeige
AW: Korrektur
05.08.2015 19:30:03
AlexG
Hallo Daniel,
danke für den Tipp. Ich sah bei den Beispielen der ExportAsFixedFormat- Methode immer, dass die Dateiendung mit angegeben wurde. Ich habe es jetzt auch mal ohne getestet und wie du angemerkt hast, ist diese nicht nötig. Beide Varianten funktionieren.
Danke und Gruß
Alex

Anzeige
AW: Korrektur
05.08.2015 19:39:31
Daniel
Hi
ja, wird so aufgezeichnet und stört auch nicht, wenn sie richtig geschrieben ist.
solltest du dich aber mal vertippen und die falsche Dateierweiterung angeben, dann wird die richtige anden ganzen Dateinamen angehängt.
dh lautet dein Speichername: Datei.pdv
wird die Datei als Datei.pdv.pdf
gespeichert.
Gruß Daniel

Anzeige
Danke für die Erklärung, Gruß owT
05.08.2015 20:03:53
AlexG

AW: Korrektur
05.08.2015 19:22:52
Christoph
Hallo Alex
Herzlichen Dank für deine rasche Rückmeldung. Ich bin immer wieder erstaunt, was ihr alles könnt.
Das Makro funktioniert fast perfekt. Jedoch erstellt es mir nur eine PDF Datei von den Blättern, die im Excel als Querformat sind. Von denen im Hochformat fehlt jede Spur. Kannst du dies auch noch einbauen?
Gruss Christoph

Anzeige
AW: Korrektur
05.08.2015 19:56:51
AlexG
Hallo Christoph,
am Seitenformat liegt es nicht, und ohne deine Datei zu kennen ist es leider nicht möglich den Fehler zu finden.
Gruß
Alex
;

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

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