Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Ein PDF Dokument anhand mehrerer Blätter erstellen
#1
Hallo ihr lieben,

ich habe mal wieder ein kleines Problem mit VBA.
Ich würde gerne mit einem klick auf einen Command Button ein PDF erzeugen.

Das PDF soll immer gleich aufgebaut sein. Auf der ersten Seite soll der Inhalt aus dem Blatt "Zusammenfassung" gespeichert, und auf den weiteren Blättern ab Seite 2 der Inhalt aus dem Blatt "Wochenübersicht" gespeichert werden.

Der Dateiname des zu speichernden PDF soll sich au den Zellen B1 und B2 auf dem Blatt "Zusammenfassung" zusammensetzen.
Das PDF soll in einen festen Ordner gespeichert werden. Für dieses Beispiel z.B unter D:\Test\

Kann mir da einer anhand der angehängten Beispieldatei helfen?


.xlsx   Beispiel.xlsx (Größe: 13,07 KB / Downloads: 0)

Vielen Dank!

Viele Grüße,
Reismann
Antworten Top
#2
Ich habe mir folgenden Code zusammengebastelt (aus dem Internet zusammenkopiert):

Dieser funktioniert aber nur wenn ich einen festen Namen für die Datei eingebe. Wenn ich wie im Code unten als Dateinamen "strDatei" verwenden will bekomme ich einen Laufzeitfehler. Irgendjemand eine Idee was ich ändern muss?


Code:
Dim arrSheet As Variant
Dim strDatei As String

With ThisWorkbook
   With .Sheets("Zusammenfassung")
        strDatei = "C:\TestLaerm\" & .Range("B1").Text & _
                  " " & .Range("B2").Text & _
                   ".pdf"
   End With
  .Sheets(Array("Zusammenfassung", "Wochenübersicht")).Copy
End With

With ActiveWorkbook
       .ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
       strDatei, Quality:=xlQualityStandard, IncludeDocProperties _
       :=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
 .Close savechanges:=False
End With
Antworten Top
#3
Ich nehme mein Frage zurück. Ich habe eine Zelle ausgelesen wo ein Doppelpunkt vorkommt. Das gefällt dem Dateinamen natürlich nicht. Jetzt geht alles.
Antworten Top
#4
Hallöchen,
Im Prinzip gehen ja die ganzen Sonderzeichen nicht, die z.B. In einem Pfadname vorkommen können und für das System relevant sind. Eventuell könntest Du das ja schon bei der Eingabe verhindern.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#5
Ja, geplant war das so auch nicht. Ich habe mir die auszulesenden Zellen dutzende male angesehen, aber nie bemerkt, dass sich dort ein Doppelpunkt drin versteckt hat. Manchmal sieht man den Wald vor lauter Bäumen nicht mehr. :21: 

Jetzt funktioniert aber zum Glück alles wie gewollt.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste