@Josef Ehrensberger - Benötige dringend Hilfe
22.01.2006 17:26:08
Konni
in meinem Thread vom 20.01. habe ich mein Problem nochmal präzise formuliert.
Der Ausdruck soll nicht auf eine Seite komprimiert werden. Vielmehr soll die optimale Seitenbreite ausgenutzt werden. Der Ausdruck soll bei der letzten nicht leeren Zeile stoppen.
Hier noch mal Dein Code, oder schau das Beispiel vom 20.01. an.
Sub Drucken(intCol As Integer) 'von Josef Ehrensberger
Dim rngHide As Range, rng As Range
Dim lngLast As Long
On Error GoTo ErrExit
Application.ScreenUpdating = False
With Sheets("Nachtragsübersicht")
lngLast = .Cells(Rows.Count, 2).End(xlUp).Row
If Application.CountA(.Range(.Cells(1, 2), .Cells(lngLast, 2))) < lngLast Then
For Each rngHide In .Range(.Cells(1, 2), .Cells(lngLast, 2))
If rngHide = "" Then
If rngHide.MergeCells Then
For Each rng In rngHide.MergeArea
rng.EntireRow.Hidden = rngHide.MergeArea.Cells(1) = ""
Next
Else
rngHide.EntireRow.Hidden = True
End If
End If
Next
End If
If Not rngHide Is Nothing Then rngHide.EntireRow.Hidden = True
.PageSetup.PrintArea = .Range(.Cells(1, 2), .Cells(lngLast, intCol)).Address
.PageSetup.Orientation = xlLandscape
.PageSetup.Zoom = False
.PageSetup.FitToPagesWide = 1
.PageSetup.FitToPagesTall = 1
.PrintOut
.PageSetup.PrintArea = ""
.PageSetup.Zoom = 100
.Range(.Cells(1, 2), .Cells(lngLast, 2)).Rows.Hidden = False
Set rngHide = Nothing
End With
ActiveSheet.DisplayAutomaticPageBreaks = False
ErrExit:
Application.ScreenUpdating = True
End Sub
Sub B_bis_L() 'von Josef Ehrensberger
Drucken 12 '12=Spalte "L"
End Sub
Sub B_bis_V() 'von Josef Ehrensberger
Drucken 22 '22=Spalte "V"
End Sub
Ich kriege das Problem allein nicht gelöst!
Bitte helfe mir noch mal.
Tausend Dank
Konni