Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1024to1028
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

PageSetup.PaperSize -Eigenschaft

PageSetup.PaperSize -Eigenschaft
16.11.2008 11:43:09
Jürgen
Hallo,
ich möchte mit Excel 2007 VBA eine Excel-Arbeitsmappe mit mehreren sehr großen Tabellenblättern als PDF-Datei erstellen, in der die Größe des PDF-Seitenformats aus der Gesamtbreite der Spalten und der Gesamthöhe aller Zeilen bestimmt wird. Die PDF-Datei wird niemals ausgedruckt werden, sondern nur auf dem Bildschirm mit entsprechendem Zoom angesehen.
Die benutzerdefinierten Einstellungen des PDF-Seitenformats kann ich im PDF-Druckertreiber vorgeben, doch bei allen Tabellenblättern, bei denen unter „Seitenlayout / Größe“ das Seiten-/Papierformat wie z. B. A4 oder Letter bereits vorgegeben ist, werden die benutzerdefinierten Einstellungen im PDF-Druckertreiber nicht akzeptiert. Ist das Seiten-/Papierformat im Tabellenblatt nicht vorgegeben, funktioniert das problemlos.
Ich habe es mit der VBA „PageSetup.PaperSize –Eigenschaft“ versucht, doch bei der Verwendung der XlPaperSize-Konstanten "xlPaperUser" für benutzerdefiniert bekomme ich den Laufzeitfehler ‚1004‘, der besagt, dass „Die PaperSize-Eigenschaft des PageSetup-Objektes kann nicht festgelegt werden.“
Wie kann ich die Vorgabe des Seiten-/Papierformats im Tabellenblatt löschen? Hat jemand eine Idee?
Im Folgenden der VBA-Code für meine Tests:
' MS-Office 2007 Prof. Plus SP1
' Auszug aus Excel 2007 -Entwicklerreferenz
' PageSetup.PaperSize -Eigenschaft
' Gibt die Größe des Papiers zurück oder legt sie fest.
' XlPaperSize-Wert mit Lese-/Schreibzugriff.
' **************
' Syntax: Ausdruck.PaperSize
' Ausdruck: Eine Variable, die ein PageSetup-Objekt darstellt
' Erstellungsdatum des Makros: 16.11.2008

Sub Makro()
With ActiveSheet.PageSetup
.PaperSize = xlPaperA4      ' funktioniert problemlos
' Benutzer-definiertes Seiten-/Papierformat festlegen
' (Seitenlayout / Größe / Papierformate)
' über die XlPaperSize-Konstante "xlPaperUser"
.PaperSize = xlPaperUser    ' erzeugt Laufzeitfehler '1004'
' Erläuterung zum Laufzeitfehler '1004' :
' Die PaperSize-Eigenschaft des PageSetup-Objektes kann nicht festgelegt werden.
End With
End Sub


Gruß
Jürgen

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: PageSetup.PaperSize -Eigenschaft
16.11.2008 12:23:14
Hajo_Zi
Halo Jürgen,
warum benutz Du einen Drucker, mache doch einfach speichen unter PDF

AW: PageSetup.PaperSize -Eigenschaft
16.11.2008 15:25:57
Jürgen
Hallo Hajo,
danke für Deine rasche Antwort. Ich weiß, dass es für Office 2007 von Microsoft ein Add-In gibt, um PDF-Dateien für den "normalen" Gebrauch zu erstellen.
Meine umfangreichen Erfahrungen mit dem Add-In sind für meine "nicht-normalen" Zwecke absolut ungeeignet, weil sehr wenig flexibel.
Der PDF-Drucker ( in Wirklichkeit ist das natürlich ein virtueller Drucker) von ABBYY entspricht meinen Anforderungen voll, doch liegt es offensichtlich an Excel, dass ich weder über das Seitenlayout-Menü noch über die VBA-Eigenschaft "PageSetup.PaperSize" eine Benutzer-definierte Blattgröße einstellen kann.
Eigentlich sollte ich das mit der XlPaperSize-Konstanten "xlPaperUser" bewerkstelligen können, die offensichtlich einmal dafür vorgesehen war, jetzt aber zu einem Laufzeitfehler führt.
Hajo, dennoch danke.
Gruß´Jürgen
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige
Archiv - Verwandte Themen
Forumthread
Beiträge