Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
968to972
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
968to972
968to972
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Printpreview zeigt zuviele Seiten an

Printpreview zeigt zuviele Seiten an
14.04.2008 12:06:00
Reinhard
Guten Morgen Wissende,
ich habe folgenden Code entwickelt:

Sub Drucken()
Dim Anz As Long, Druck As Range
Call Seiten
With Worksheets("AssessmentChange")
For Anz = 1 To UBound(rngSeite)
If Application.WorksheetFunction.CountA(.Range(rngSeite(Anz).Address))  0 Then
Set Druck = Nothing
Set Druck = Union(Worksheets("Assessment").Range("A1:I2"), rngSeite(Anz))
Druck.PrintPreview
Set Druck = Nothing
End If
Next Anz
End With
End Sub


(Das Unterprogramm "Seiten" ist nachfolgend gelistet falls benötigt.)
Der Code prüft jede potentielle Druckseite ob da Eintragungen gemacht wurden, wenn ja soll diese Druckseite gedruckt werden samt den 2 Kopfzeilen 1 und 2 obendrüber.
Bei Druckseite 1 klappt das auch. Bei allen anderen Druckseiten werden pro Druckseite leider immer 2 Seiten in der Vorschau angezeigt. Erste Seite besteht nur aus den 2 Kopfzeilen, die zweite Seite ist dann so wie geplant (also Kopfzeilen und Druckseite)
Wie bekomme ich denn die erste Seite in der Vorschau weg?
Außer set Druck=Nothing fiel mir nix ein und das hilft nicht.
Danke ^ Gruß
Reinhard


Option Explicit
Option Base 1
Public rngSeite() As Range  ', bolNichtleer() As Boolean
Sub Seiten()
Dim SW As HPageBreak, Anz As Byte, Von As Long, Bis As Long, Mldg As String
Von = 1
With Worksheets("Assessment")
For Each SW In .HPageBreaks
Bis = SW.Location.Row - 1
Anz = Anz + 1
ReDim Preserve rngSeite(Anz)
Set rngSeite(Anz) = .Range("A" & Von & ":I" & Bis)
Mldg = Mldg & "Blatt " & Format(Anz, "00") & " umfasst den Bereich " & rngSeite(Anz). _
Address & Chr(13)
Von = Bis + 1
Next SW
Bis = .Range("A" & Rows.Count).End(xlUp).Row
If Bis >= Von Then
Anz = Anz + 1
ReDim Preserve rngSeite(Anz)
Set rngSeite(Anz) = .Range("A" & Von & ":I" & Bis)
Mldg = Mldg & "Blatt " & Format(Anz, "00") & " umfasst den Bereich " & rngSeite(Anz). _
Address
End If
'ReDim bolNichtleer(Anz)
End With
'MsgBox Mldg
End Sub


Ereignis Code im Blatt "Assessment":
Private Sub Worksheet_Change(ByVal Target As Range)
Target.Copy Destination:=Worksheets("AssessmentChange").Range(Target.Address)
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Printpreview zeigt zuviele Seiten an
14.04.2008 15:15:00
Adi
Hallo Reinhard,
hast Du eventuell manuell feste Seitenumbrüche (über Einfüge | Seitenumbruch...; z.B. in A3) auf dem Sheet eingefügt?
Gruss
Adi

AW: Printpreview zeigt zuviele Seiten an
14.04.2008 15:35:41
Reinhard
Hallo Adi,
danke dir, das klingt sehr gut, gleich mal nachprüfen.
Nur der Code ist von mir. Und die hat so 30 Blätter, alle schön bunt, tausende von verbundenen Zellen, und ich glaube alle Zellen haben Kommentare die dann gelb im Blatt auftauchen, ich würd da blind werden wenn ich mit dem Ding täglich arbeiten müßte. Achso, was ich damit sagen wollte, die ist so bunt, hat noch selbst Zellen mit gestrichelten Umrandungen, da ich Farbsehshwäche habe sehe ich da wenig, grad wil ich so viele Farben sehe.
Gruß
Reinhard

Anzeige
AW: Printpreview zeigt zuviele Seiten an
14.04.2008 17:40:00
Reinhard
Hi Adi,
leider war es das nicht, ich stellte mich in A3, Rechtsklick, dann Alle Seitenwechsel entfernen, dann müßten sie wohl weggewesen sein.
Aber Fehler blieb.
Als workaround arbeite ich jetzt mit der Hilfstabelle Druck, und kopiere dahin die zu druckenden zeilen und drucke das aus, das klappt.
Aber es macht keine Logik daß es am nichtzusammenhängenden Druckbereich liegen sollte, denn der wird ja brav ausgedruckt, das Problem ist ja die "leere" Druckseite vorher, also wo man oben nur die 2 Wiederholungszeilen sieht.
So klappt es, aber interessieren würde mich schon sehr, auch für zukünftigen Code warum der Ursprungscode diesen Fehler erzeugt, deshalb Frage noch offen...

Sub Drucken()
Dim Anz As Long
Call Seiten
With Worksheets("AssessmentChange")
For Anz = 1 To UBound(rngSeite)
If Application.WorksheetFunction.CountA(.Range(rngSeite(Anz).Address))  0 Then
Worksheets("Druck").Cells.Clear
Worksheets("Assessment").Range("A1:I2").Copy Destination:=Worksheets("Druck").Range(" _
a1")
rngSeite(Anz).Copy Destination:=Worksheets("Druck").Range("a3")
Worksheets("Druck").PrintPreview
'Worksheets("Druck").PrintOut
End If
Next Anz
End With
End Sub


Gruß
Reinhard

Anzeige
AW: Printpreview zeigt zuviele Seiten an
14.04.2008 20:09:00
Adi
Hi Reinhard,
bin mir nicht ganz sicher (habe Deinen Code nicht im Detail nachvollzogen), aber hast Du da nicht etwas "doppelt gemoppelt"?:
Du brauchst doch in Set Druck = Union(Worksheets("Assessment").Range("A1:I2"), rngSeite(Anz)) A1 bis I2 nicht zusätzlich mit Deinem Folgeblatt-Bereichen zu vereinigen, da Du doch Zeile 1:2 als Wiederholungszeilen hast. Daher glaube ich rührt das Dublikat mit Seitenumbruch.
Oder?
Gruß
Adi

*aargs* ich fasse es nicht :-(
14.04.2008 21:17:55
Reinhard
Hallo Adi,
jetzt passiert es genau umgedreht, erst kommt die korrekte Druckseite, dann als zweite Seite die nahezu leere Seite nur mit den Wiederholungszeilen :-(
Ich werde ja immer interessierter an dem Problem.
Ich mail jetzt mal und frage nach ob ich die Datei hier hochladen darf, Antwort kriege ich dann morgen.
Denn scheinbar ist das etwas was man nur am Objekt testen kann.
Und natürlich habe ich versucht, dies an/in einer Beispieldatei nachzustellen um die dann hochzuladen, aber es gelang mir nicht das Verhalten nachzustellen, im Gegenteil, es passierten ganz andere Dinge die falsch liefen :-(
Dankeschön für deine Bemühungen bisher und jedesmal dachte ich du hast die Lösung, aber die mistige Datei wehrt sich sehr gut gegen unsere Logik und setzt bisher ihre durch :-)
Gruß
Reinhard

Anzeige
AW: *aargs* ich fasse es nicht :-(
14.04.2008 21:23:00
Adi
Ich denke auch, dass man das nur am Objekt lösen kann. Da bin ich aber ganz zuversichtlich ...
Bis morgen .... (Ich schau hier morgen gern noch 'mal rein.)

AW: *aargs* ich fasse es nicht :-(
19.04.2008 01:17:00
Reinhard
Hallo Adi,
ich bekam zwar die Zustimmung, aber die kam so zögerlich, da habe ich es lieber gelassen.
Da da noch genug andere Probleme sind, bleibt es halt ungeklärt warum da diese beiden Zeilen extra gedruckt wurden.
Danke für deine Hilfe
Gruß
Reinhard

158 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige