Anzeige
Archiv - Navigation
1444to1448
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

Druckbild auf eine Seitenbreite hochskalieren

Druckbild auf eine Seitenbreite hochskalieren
14.09.2015 19:24:55
Martin
Hallo,
gibt es eine Möglichkeit das Druckbild einer Tabelle auf die maximal mögliche Seitenbreite zu vergrößern? Eine automatische Funktion habe ich nicht gefunden und daher versucht eine VBA-Lösung zu schreiben. Aber auch mein VBA-Versuch klappt leider nicht zuverlässig (...manchmal entsteht doch ein Seitenumbruch):
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim intZoom As Integer
'Kontrolle auf Seitenumbrüche
If ActiveSheet.VPageBreaks.Count = 0 Then
With ActiveSheet.PageSetup
'Aktuellen Zoom auslesen
intZoom = .Zoom
'Zoom erhöhen, bis Seitenumbruch entsteht
Do
.Zoom = .Zoom + 1
'.FitToPagesWide = 1
Loop Until ActiveSheet.VPageBreaks.Count > 0
'Zoom um 1 minimieren, um Seitenumbruch zu entfernen
.Zoom = .Zoom - 1
End With
End If
End Sub
Viele Grüße
Martin

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Druckbild auf eine Seitenbreite hochskalieren
16.09.2015 14:40:47
Michael
Hi Martin,
Deine Aufgabenstellung widerspricht sich: wenn Du auf SeitenBREITE skalierst, ist doch verständlich, daß hin und wieder ein SeitenUMBRUCH vorkommt. Dann skaliere eben auf SeitenHÖHE.
Lies mal z.B. hier: http://www.office-loesung.de/ftopic306476_0_0_asc.php
oder gugel nach excel vba print to fit
Schöne Grüße,
Michael

AW: Druckbild auf eine Seitenbreite hochskalieren
16.09.2015 14:44:46
Martin
Hallo Michael,
vielen Dank für die Antwort. Eventuell habe ich mich etwas unglücklich ausgedrückt. Es soll nur horizontal kein Seitenumbruch entstehen, also die zu druckende Tabelle soll eine Seitenbreite nicht überschreiten. Nach unten hin können gerne Seitenumbrüche entstehen, das ist mir egal.
Viele Grüße
Martin

Anzeige
AW: Druckbild auf eine Seitenbreite hochskalieren
16.09.2015 23:18:37
Michael
Hallo Martin,
und das .FitToPagesWide = 1 geht nicht?
Bei MS steht https://msdn.microsoft.com/en-us/library/office/ff194365.aspx?f=255&MSPPError=-2147217396
daß zoom ausgeschaltet sein muß, damit die Seitenbreite geht - siehe Codeschnipsel dort.
Schöne Grüßé,
Michael

AW: Druckbild auf eine Seitenbreite hochskalieren
16.09.2015 23:30:55
Martin
Hallo Michael,
leider geht .FitToPagesWide nicht, weil das die Seite immer auf eine Seitenbreite herunterskaliert, aber eben leider nicht "hochskaliert". Bei .FitToPagesWide werden die 100%-Zoom also niemals überschritten.
Viele Grüße
Martin

vielleicht ein Ansatz
17.09.2015 01:12:50
Michael
Hi Martin,
ja, scheint so zu sein.
Ich sträube mich grundsätzlich dagegen, Excel in so einer Schleife lange rechnen zu lassen - das dauert sicherlich.
Man kann die Pixelabstände der Zellen mit VBA ermitteln:
Sub herumspielen()
' angeregt durch:
' http://www.office-loesung.de/ _
ftopic620406_0_0_asc.php
Dim x1&, x2&
Dim a As Variant
a = Split(ActiveSheet.PageSetup.PrintArea, ":")
x1 = ActiveWindow.PointsToScreenPixelsX(0) + (Range(a(0)).Left / 72 * 96)
x2 = ActiveWindow.PointsToScreenPixelsX(0) + (Range(a(1)).Offset(, 1).Left / 72 * 96)
MsgBox "x1: " & x1 & " x2: " & x2
End Sub

Die sind allerdings abhängig vom Zoom-Faktor der Bildschirm-Ansicht.
Trotzdem: Du kannst mal mit 100% Pagesetup.Zoom die max. Grenzen des Druckbereichs ermitteln und bei einem konkreten Ausdruck entsprechend multiplizieren.
Dann bist Du schon mal in der Nähe des gesuchten Wertes.
Das andere ist, evtl. eine zweite Schleife dranzuhängen, in der Du wieder um 1 runterzählst, bis der Umbruch wieder weg ist.
Befriedigen finde ich das alles nicht, aber auf Anhieb fällt mir nichts besseres ein.
Schöne Grüße,
Michael

Anzeige
AW: vielleicht ein Ansatz
17.09.2015 09:45:15
Martin
Hallo Michael,
das ist ein wirklich sehr interessanter Ansatz, dem ich relativ hohe Erfolgschancen einräume. Ich bedanke mich vielmal für deine Anregung!
Viele Grüße
Martin

gerne, vielen Dank für die Rückmeldung owT
17.09.2015 16:35:03
Michael

312 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige