Alle Spalten excelsheet sind nicht angebracht, in derselben Seite des pdf; während der Konvertierung mit Excel-VBA
Versuche zu konvertieren microsoft excel-Datei mit einer großen Anzahl von Spalten (70+) in ein pdf-Dokument über eine Excel-VBA-code.
In der aktiven Arbeitsmappe, bin versucht zu retten, 'Tabelle1', um das PDF-format am gewünschten Pfad. Ich habe den folgenden code.
Sub GetSaveAsFilename()
Dim fileName As String
fileName = Application.GetSaveAsFilename(InitialFileName:="", _
FileFilter:="PDF Files (*.pdf), *.pdf", _
Title:="Select Path and FileName to save")
If fileName <> "False" Then
With ActiveWorkbook
.Worksheets("Sheet1").ExportAsFixedFormat Type:=xlTypePDF, fileName:= _
fileName, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
End With
End If
End Sub
Beim laufen bin den VBA-code und speichern Sie die pdf-Datei, sehe ich das; die ganze excelsheet ist nicht angebracht, auf derselben Seite. Es ist die Anzeige einiger Inhalte in der nächsten Seite.
(Nur wenige Spalten erscheinen in der ersten Seite, die restlichen erscheinen auf der nächsten Seite und so weiter..).
Ich habe mit So veröffentlichen Sie ein breites Arbeitsblatt im PDF-format?.
Aber, die Einstellung Seitenlayout auf Querformat und konvertieren von excel-Datei manuell zu PDF; zeigt auch einige Spalten in nächsten Seiten.
Gibt es viele Kostenlose Excel to PDF Converters verfügbar online, die geben mir die gleichen Ergebnisse.
Gibt es eine Funktion in VBA, mit der ich passen alle Spalten in eine einzelne Seite der PDF-Datei?
- Haben Sie die Seite Setup von Ihrem Arbeitsblatt? Es ist möglich, dass Sie große Margen, eine nicht-angemessene Seitengröße, etc. Sie können auch die Kontrolle der druckbereich des Blattes, durch auswählen von Ansicht --> Page Layout
- Meine Seite, die Größe ist A4-Format und Seitenlayout --> Orientierung festgelegt ist
Landscape
vielen Dank für die Beratung. Jetzt werde ich auch überprüfen, mit anderen "Seite einrichten", wie "skalieren", wird überprüft, ob ich die konvertieren kann excel manuell zu PDF und wieder zu Euch zurück kommen - Ja, manchmal nur über trial-and-error, bis Sie es genau so, wie Sie es brauchen ... 🙂
- Ya @ScottHoltzman. Ich habe versucht, mit sinkenden Skala bis 10% und ich war in der Lage zu veröffentlichen die fast 55 Spalten in eine einzelne Seite der pdf-Datei. Hätte ich noch veröffentlichen paar mehr Spalten in der gleichen Seite 🙂 Und excel ändert automatisch die Skala auf 10%, wenn ich versuche, untere Skala, als es 🙂
- können Sie veröffentlichen es auf beiden Seiten (bei 10% ist nicht wirklich unlesbar überhaupt???) wenn Sie halten einige Spalten auf der linken Seite zu drucken, für jedes Blatt die Zeile identifizieren der Daten auf der 2. Platte?
- Es gibt eine option zum drucken zu zwingen, Ihre Daten werden 1 Seite breit und 1 Seite hoch. Wenn Sie auf diese [unter layout -> scale to fit], es zeigt Ihnen, wie viel es schrumpft Ihre Daten passen auf 1 Seite. Wenn Sie ein makro aufzeichnen, mit der Sie dies tun, wird es Ihnen der VBA-code festlegen, dass die option.
- Ya. Viele Plätze waren nicht mehr lesbar. Zu
keep some columns on the left to print for each sheet to identify the row of data on the 2nd sheet
ist eine gute Idee. Einzige Sache ist, dass ich anpassen, um solche Spalten manuell. Wenn ich nicht bekommen, jede andere Lösung, bin sicher für Sie. 🙂
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ist das problem mit der Seite Setup-Einstellungen, ich habe getan, einige kleinere änderungen an Ihrem code und fügte hinzu, ein Verfahren zur Durchführung der Seite setup-Einstellungen beim Start der Prozedur können Sie das Papierformat auswählen, beachten Sie jedoch den minimalen zoom erlaubt ist, ist 10% (siehe PageSetup-Mitglieder (Excel -)). Daher, wenn selbst bei 10% der druckbereich passt nicht in eine Seite schlage ich vor, zur Wahl mit einem größeren Papierformat (z.B. A3) zum erzeugen einer PDF-Seite, dann beim drucken der Pdf-Datei wählen Sie an Seite anpassen. Das Verfahren gibt Ihnen auch die Veränderung zum spielen mit den Rändern, beim generieren von PDF ' s die ich setzen Sie alle Ränder auf 0, aber Sie können geändert, wie es Ihren Zielen entspricht.
.FitToPagesWide
und.FitToPagesTall
und entscheiden, was die beste Kompression, die es ermöglicht die Lesbarkeit zu verbessern..FitToPagesWide
und.FitToPagesTall
- ob ich in der Lage, passen unsere Daten in eine breitere Seite. An diesem Punkt, ich glaube in deinem Satz:what I intent is not doable.
, aber bin immer noch neugierig, ob es möglich ist, durch eine Verbreiterung der Größe(Breite) der Seite. (Ich don ' T haben, um es zu drucken körperlich; nur in einer softcopy - PDF)Width of all columns together is 2750 pixels.
(Gesamt keine. der Spalten - 100). 2)There are around 1500 rows
. 3) Arial und Calibri, Schriftgröße 11; und tut mir Leid, ich werde nicht in der Lage, um die Datei teilen, wie Es einige sensible Daten. ...und Sie brauchen sich nicht entschuldigten. 🙂 Ich fand diese Frage ähnlich wie meine Anforderung, so dachte der bietet bounty, statt zu Fragen eine neue Frage. Grüße,E Size
was 86,36 cm x 111.76 cm, nach den Messungen, die Seite sollte hoch-statt Querformat. Ich aktualisiere das Vorgehen, um diese alternativen. versuchen Sie, und lassen Sie mich wissen.fügen Sie dem code, die Sie zwingen, alles zu drucken Sie auf einem Blatt breit, aber immer noch lassen Sie es drucken über mehrere Blätter groß
auch Ihre Margen zu "Eng"
Wählen Sie zunächst den Bereich, den Sie drucken möchten, und legen Sie es als PrintArea. Und dann diesen code ausführen, diese Arbeit für mich mit 79 Spalten-Blatt
Das problem ist, dass Sie brauchen, um Wählen Sie die
UsedRange
und verwenden Sie dannSelection.ExportAsFixedFormat
EDIT:
War das problem der
PageSetup
denn jede Seite, die Größe hat eine maximale pixel-Grenze, wie Sie waren Richtung in Ihrem Kommentar.Die Größe der Seite festlegen, Übergröße A0, die sollte mehr als gerecht für Ihre 100x1500
UsedRange
. Hier ändern Sie die Seitengröße mit derFitToPages... = 1
zu überprüfen, dass IhreRange
ist innerhalb der Linien drucken.Den
FitToPagesWide
undFitToPagesTall
ist passt alles auf eine Seite.Beachten Sie, dass die Seite Leer angezeigt wird, müssen Sie Zoom in eine Menge, um die Daten anzuzeigen
I guess, What am trying is may not be doable
Als, 1) Breite aller Spalten zusammen ist 2750 Pixel. 2) Total no. der Spalten - 100.Is it so?
stackoverflow.com/questions/33127693/...