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

Seitenzahl anzeigen in Normalansicht (Hintergrund)

Seitenzahl anzeigen in Normalansicht (Hintergrund)
06.07.2004 17:57:45
Matthias B.
Hallo,
gibt es eine Möglichkeit, die Seitenzahl auch in der Normalansicht im Hintergrund anzeigen zu lassen, wie es in der Seitenumbruchsvorschau möglich ist. Ich habe eine lange Excel Liste in der es mir am liebsten wäre, dass die jeweilige Seitenzahl im Hintergrund angezeigt wird, damit ich weiss auf welcher Seite ich bin und auch beim Drucken keine Probleme habe.
Vielen Dank
Matthias

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Seitenzahl anzeigen in Normalansicht (Hintergrund)
06.07.2004 18:23:11
Ulf
Ja, das ist möglich, wenn auch mit einigem Programmieraufwand verbunden.
Das Ganze soll natürlich automatisch passieren?
Weißt du, wie die Seitenzahlen ermittelt werden?
Ulf
AW: Seitenzahl anzeigen in Normalansicht (Hintergrund)
06.07.2004 20:45:29
Matthias B.
Hallo Ulf,
ja die Seitenzahl sollte es mir automatisch im Hintergrund anzeigen. Eben vergleichbar mit der Seitenumbruchvorschau. Ich weiß nicht wie die Seitenzahlen ermittelt werden.
Matthias
AW: Seitenzahl anzeigen in Normalansicht (Hintergrund)
06.07.2004 20:51:14
andre
Hallo Matthias,
probier mal das:

Sub Druckseiteneinrichten()
'code von jörg lorenz <a href="http://www.excel-vba.de/drucken.htm">http://www.excel-vba.de/drucken.htm</a>
'angepasst von andre schau <a href="http://a-schau.de">http://a-schau.de</a>
Dim intI%, intJ%, intK%
Dim SeitenZähler%
Dim WievielteZeile%, WievielteSpalte%
ReDim arrSammler(1)
Dim SeiteLetzteZeile As Long
'Standardmäßig wird bei jeder Seite der Inhalt der linken oberen Zelle
'zurückgegeben. Soll das eine andere sein, müssen die folgenden Werte
'geändert werden.
'Soll z. B. auf der ersten Seite der Inhalt von B4 zurückgegeben werden,
'muß die erste Variable auf 3, die zweite auf 1 gesetzt werden
'(vierte Zeile von oben, zweite Spalte von links).
WievielteZeile = 0
WievielteSpalte = 0
ActiveWindow.View = xlPageBreakPreview
'ActiveSheet.ResetAllPageBreaks
arrSammler(0) = 1
For intI = 1 To ActiveSheet.HPageBreaks.Count
ReDim Preserve arrSammler(intI)
arrSammler(intI) = ActiveSheet.HPageBreaks.Item(intI).Location.Row
Next
SeitenZähler = 0
For intJ = 0 To intI - 1
'aenderung von andre, erst mal nur für seitenanordnung im sheet
'nur untereinander
If intJ + 1 < UBound(arrSammler()) Then
SeiteLetzteZeile = arrSammler(intJ + 1)
Else
'funktioniert nur wenn zelle 65536 (letzte zelle des blattes)
'nicht belegt ist, und wenn spalte a die letzte belegte zelle hat
'wenn nicht bei Cells(Rows.Count, 1).... statt 1 andere spaltennummer
'einrtragen
SeiteLetzteZeile = Cells(Rows.Count, 1).End(xlUp).Row
End If
SeitenZähler = SeitenZähler + 1
Ausführen CInt(arrSammler(intJ)) + _
WievielteZeile, 1 + _
WievielteSpalte, SeitenZähler, SeiteLetzteZeile
Next
For intJ = 1 To ActiveSheet.VPageBreaks.Count
SeitenZähler = SeitenZähler + 1
Ausführen CInt(arrSammler(0)) + _
WievielteZeile, ActiveSheet.VPageBreaks.Item(intJ).Location.Column + _
WievielteSpalte, SeitenZähler
For intK = 1 To intI - 1
SeitenZähler = SeitenZähler + 1
Ausführen CInt(arrSammler(intK)) + _
WievielteZeile, ActiveSheet.VPageBreaks.Item(intJ).Location.Column + _
WievielteSpalte, SeitenZähler
Next
Next
ActiveWindow.View = xlNormalView
End Sub


Sub Ausführen(Zeile As Integer, Spalte As Integer, SeitenZähler As Integer, Optional ByVal SeiteLetzteZeile As Integer)
'optional in subzeile zugefügt von andre, zum eintrag in jede zeile
'originalcodeteile auskommentiert
'eintrag auf der letzten seite nur im ausgefüllten bereich
Dim strAnzeige$
'strAnzeige = Cells(Zeile, Spalte) & "     Seite: " & SeitenZähler
'MsgBox strAnzeige
If SeiteLetzteZeile > 0 Then
For i = Zeile To SeiteLetzteZeile
Cells(i, 7) = "Seite: " & SeitenZähler
'Cells(Zeile, 7) = strAnzeige
Next
Else
Cells(Zeile, Spalte) = "Seite: " & SeitenZähler
End If
'ActiveSheet.PageSetup.LeftHeader = strAnzeige
'ActiveSheet.PrintOut from:=SeitenZähler, to:=SeitenZähler
End Sub

Anzeige
AW: Seitenzahl anzeigen in Normalansicht (Hintergrund)
06.07.2004 21:47:27
Matthias B.
Hallo Andre,
hab ich was falsch gemacht? Fügt mir die Seitenzahl in eine Zelle ein. Wollte ich aber nicht. Hätte Sie gerne z.B. mitten im Blatt als Hintergrund und unabhängig von einer Zelle.
Matthias
AW: Seitenzahl anzeigen in Normalansicht (Hintergrund)
07.07.2004 05:45:13
andre
Hallo Matthias,
...hast nix falsch gemacht. Das ist eine Lösung für die Ermittlung der Seitenzahl und Platzierung im Blatt. Wenn Du die Zahl als Hintergrund willst geht das nur wie Du es schon getan hast über die Seitenumbruchvorschau oder Du erstellst Dir ein transparentes Bild, welches über alle Seiten geht und an der richtigen Stellen die Seitennummer hat. Das mag bei zwei Seiten noch gehen, aber bei mehr wird es lustig, die Nummer an die richtige Stelle zu positionieren und irgendwann kackt Excel auch ab weil die Grafik zu groß wird ... Oder man bastelt an dem Code noch etwas rum und platziert die Zahl statt in eine Zelle in ein Textfeld und setzt von diesem die Eigenschaft Objekt drucken auf falsch.
Was stört Dich eigentlich an der Seitenumbruchvorschau?
Wenn Deine Seitenanzeige zu schmal oder zu kurz ist oder was auch immer dann mache folgendes:
Gehe mit der Normalansicht in die Seitenansicht und wieder raus, dann bekommst Du in der Regel die Seitenränder angezeigt.
Dann legst Du über Deine benötigten Seiten den Druckbereich anhand der Ränder fest.
Dann nimmst Du die Seitenumbruchvorschau und siehst Deine Blätter in voller Größe.
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige