Im angehängten Dokument möchte ich folgendes per Makro tun können: Schaltfläche Pdf erstellen (alle): Erstellt ein PDF mit den weissen Bereichen aus Schreiben, Programm und Rechnung (aneinander). Habe eine Formel, aber die Druckränder übernimmt er nicht richtig. Es soll l 0.6 r0.6 o1.2 u1.8 sein, ausserdem der Druckbereich "weisser Bereich", wie kriege ich das hin?
Schaltfläche Pdf erstellen: Eigentlich das gleiche wie oben, aber eben nur die aktuelle Seite...
23.12.2016, 11:57 (Dieser Beitrag wurde zuletzt bearbeitet: 27.12.2016, 21:55 von Rabe.
Bearbeitungsgrund: "DSPAN >" entfernt
)
Hi,
(22.12.2016, 23:39)Hawkeye schrieb: Im angehängten Dokument möchte ich folgendes per Makro tun können: Schaltfläche Pdf erstellen (alle): Erstellt ein PDF mit den weissen Bereichen aus Schreiben, Programm und Rechnung (aneinander). Habe eine Formel, aber die Druckränder übernimmt er nicht richtig. Es soll l 0.6 r0.6 o1.2 u1.8 sein, ausserdem der Druckbereich "weisser Bereich", wie kriege ich das hin?
Schaltfläche Pdf erstellen: Eigentlich das gleiche wie oben, aber eben nur die aktuelle Seite...
Teil 2: Mit disem Makro speicherst Du den übergebenen Bereich als PDF in einem Verzeichnis ab:
OptionExplicitSub PDF_Einzelseite()
Dim strPfadDateiExport AsString AWS AsString'PDF freigegeben abspeichern With ActiveWorkbook.ActiveSheet.Range("A3:M77") 'Bereich anpassen 'Definition des Datei-/Blattnamens, Pfad und Name, usw. anpassen! 'in E18 steht die Kundennummer
strPfadDateiExport = ThisWorkbook.Path & "\Freigabe\" & Format(Date, "yyyy-mm-dd") & " - " & ActiveSheet.Range("E18")
AWS = strPfadDateiExport & " - Freigabe.pdf"
.ExportAsFixedFormat 0, AWS
EndWithEndSub
Teil 1: Wenn Du Dir nun ein Zusammenstellungsblatt erstellst, auf dem Du per Kamera-Funktion von allen Seiten den zu druckenden Bereich einfügst, kannst Du mit demselben Makro dann die drei Seiten auf einem Blatt oder auf drei Blätter verteilt als PDF speichern.
Aber eigentlich würde ich gerne den Code verwenden, welchen ich schon beim Button Pdf für all Seiten erstellen habe. Er müsste mohl nur noch etwas angepasst werden, damit die Bereiche stimmen, ansonsten funktioniert er ja super.
Dein Code gibt mir "Dspan> AWS As String" einen Fehler aus. Kenne mich leider zu wenig mit VBA (eigentlich gar nicht) aus um das zu eliminieren.
Auf der Seite EV_Schreiben ist der Code mit dem Command Button verknüpft. Wenn jemand das zum laufen bringen würde und direkt ändern könnte wäre das super Also Einzelspeichern von PDF und alle zusammen...
26.12.2016, 11:16 (Dieser Beitrag wurde zuletzt bearbeitet: 26.12.2016, 11:16 von Hawkeye.)
Hallo zusammen
Also ich habe nochmals viel daran gearbeitet, jetzt fehlt nur noch das Druckmakro. Nochmals zu Erläuterung:
Pdf erstellen (alle): Erstellt ein PDF mit dem weissen Bereich aus: EV_Schreiben, EV_Programm; EV_Rechnung
Pdf erstellen: Erstellt ein PDF der aktuellen Seite (auch weisser Bereich)
Wichtig: Z.T. werden Spalten ausgeblendet, dadurch wird der weisse Bereich weniger hoch. Er sollte aber immer oben auf der Seite sein (Logo oben). Eine allfällig eingefügte Fusszeile sollte aber dann zuunterst sein.
Im Anhang das neue Dokument. Wäre sehr dankbar wenn das jemand anpassen könnte, komme nicht weiter...
27.12.2016, 21:57 (Dieser Beitrag wurde zuletzt bearbeitet: 27.12.2016, 21:57 von Rabe.)
(24.12.2016, 18:41)Hawkeye schrieb: Dein Code gibt mir "Dspan> AWS As String" einen Fehler aus. Kenne mich leider zu wenig mit VBA (eigentlich gar nicht) aus um das zu eliminieren.
das Dspan> ist fehlerhaft reingekommen, weiß nicht, warum. Also löschen. Habe es oben korrigiert.
Vielen Dank, aber ich kriege es nicht zum laufen. Kannst DU den Code eventuell in die Excel Datei beim richtigen Command Button einfügen? Wie ich das für alle drei Seiten machen muss (Kamera funktion???) ist mir auch schleierhaft
Zusätzlich die jeweiligen Seiten manuell auf Darstellung auf einer Seite skalieren, dann:
Sub RPP()
Worksheets(Array("EV_Schreiben", "EV_Programm", "EV_Rechnung")).Copy
With ActiveWorkbook
.ExportAsFixedFormat _
xlTypePDF, Environ("UserProfile") & "\Desktop\MeinePDF", OpenAfterPublish:=True
.Close FalseEndWithEndSub
Speichert "MeinePdf.Pdf" auf Deinem Dektop und öffnet Dein PDF-Programm mit der Datei. Willst Du letzteres nicht dann lasse , OpenAfterPublish:=True weg.
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)