Druck-Seite ermitteln

Excel, Seitennummer einer Zelle ermitteln

Mitunter stellt sich die Frage, auf welch­er Seite eine bes­timmte Zelle gedruckt wer­den wird. Diese Funk­tion gibt die Seit­en-Num­mer zurück:

Option Explicit

Public Function SeitenNr(rngZelle As Range) As Integer
  Dim wksHor As Integer, wksVert As Integer, SeiteNr As Integer
  Dim VertPb As Object, HortPb As Object
  Dim lngOrder As Long
  
  lngOrder = rngZelle.Parent.PageSetup.Order
  wksVert = rngZelle.Parent.VPageBreaks.Count + 1
  wksHor = rngZelle.Parent.HPageBreaks.Count + 1
  
  SeiteNr = 1
  For Each VertPb In rngZelle.Parent.VPageBreaks
    If VertPb.Location.Column > rngZelle.Column Then Exit For
    SeiteNr = SeiteNr + IIf(lngOrder = xlDownThenOver, wksHor, 1)
  Next VertPb
  For Each HortPb In rngZelle.Parent.HPageBreaks
    If HortPb.Location.Row > rngZelle.Row Then Exit For
    SeiteNr = SeiteNr + IIf(lngOrder = xlDownThenOver, 1, wksVert)
  Next HortPb
  SeitenNr = SeiteNr
End Function
'Danke an EarlFred für die Korrektur! :-)

▲ nach oben …

Wenn Sie (nach der Instal­la­tion dieser Funk­tion) in ein­er beliebi­gen (leeren) Zelle wis­sen möcht­en, auf welch­er Seite die Zelle R47 ste­ht, dann geben Sie die Funk­tion so ein:

=SeitenNr(R47)

und die als Ergeb­nis angezeigte Zahl ist dann die Seit­en-Num­mer, welche auch bei entsprechen­der Ein­stel­lung auf dem Aus­druck ver­merkt ist. Wenn Sie irgend etwas an der Tabelle ändern, was die Seit­e­naufteilung verän­dern kön­nte, dann muss die Funk­tion natür­lich erneut aufgerufen wer­den.

Möcht­en Sie diese Funk­tion in Ihrem Code ein­set­zen und der Vari­ablen Druck­Seiten­Num­mer zuweisen, dann wäre der Aufruf beispiel­sweise so:

DruckSeitenNummer = SeitenNr(Range("R47"))

Hin­weis: Denken Sie bitte daran, dass Funk­tio­nen (UDF) stan­dard­mäßig in einem all­ge­meinen Mod­ul gespe­ichert wer­den.

Sie kön­nen den Funk­tions-Code als gepack­te *.zip-Datei mit dem ASCII- (Text) und Basic-Code zum Ein­fü­gen in ein Mod­ul hier herunter laden. Soll­ten Sie diese Funk­tion­al­ität in mehreren Map­pen benöti­gen, bietet sich eine Kon­vertierung in ein Add-In an. Auf Wun­sch übernehmen unsere Spon­soren von GMG-CC das gerne für Sie gegen ein geringes Ent­gelt.

[NachOben­Let­zte Verweis=„CS: Druck­seite ermit­teln”]
Dieser Beitrag wurde unter Code-Schnipsel, Mit VBA/Makro, Tabelle und Zelle, Tipps und Tricks, Verschiedenes abgelegt und mit , , , , , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.