Seitenzahl einer Druckseite auslesen

  • Excel

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von petaod.

    Seitenzahl einer Druckseite auslesen

    Hallo zusammen,
    ​ich habe eine Excel-Datei mit ca.100 Druckseiten ; in Tabellenblatt 1 .
    ​Zu dieser Datei möchte ich nun ein Stichwortverzeichnis anlegen ; in Tabellenblatt 2.
    Die Stichwörter liegen fest.
    Mit einer FOR NEXT Schleife wird in Tabellenblatt 1 nach diesem Stichwort gesucht.
    ​Wird das Stichwort gefunden ,soll die Seitenzahl der Druckseite ausgelesen werden.

    Da ich Anfänger bin , finde ich keinen Ansatz um dieses Problem zu lösen.
    ​Kann jemand helfen !?
    Gruß
    ​Baxbo
    Die Nummer der Druckseite ist keine Eigenschaft des Arbeitsblattes, sondern des Ausdrucks.
    Deshalb wird diese auch erst beim Drucken berechnet.
    Insbesonders beim dynamischen Drucken (z.B. 1 Seite breit) verändert sich die Seitennummer, abhängig vom Inhalt.

    Textverarbeitungsprogramme (z.B. Word) haben dafür mehrstufige Verfahren eingebaut, um Inhaltsverzeichnis und Stichwortverzeichnis zu erstellen und mit den gültigen Seitenzahlen auszustatten.
    Du versuchst Excel als Textverarbeitung zu missbrauchen.
    Excel ist zwar mächtig, aber meines Wissens dafür überfordert.

    Entweder du arbeitest mit Zeilen-Referenzen im Verzeichnis.
    Oder du baust dir eine Kapitel-Struktur.
    Oder du machst dir einen Word-Rahmen, den du mit den Excel-Daten fütterst.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    Mir fällt noch eine Frage ein.
    ​Wenn ich die Seitenansicht auf Umbruchvorschau stelle , erscheint eine blaue Markierung für die zu druckende Seite und in der Mitte des Blattes , in grau , die Seitenzahl.
    ​Diese Angabe muss ja irgend wo generiert werden. Excel "kennt" also schon vor dem drucken die Seitenzahl.
    Ist es nicht möglich diese Angabe auszulesen ??

    Gruß
    baxbo
    Ich wüsste nicht, wo du das im Objektmodell auslesen kannst.
    Du kannst dich vielleicht annähern über
    Worksheet.Pagesetup.Pages.Count.
    Da kriegst du die Anzahl der Druckseiten raus.
    Wenn deine Zeilen alle gleich hoch sind, kannst du vielleicht daraus berechnen, auf welcher Seite deine Zeile sein könnte.
    Hilfreich ist in dem Fall sicher, wenn der Ausdruck genau eine Seite breit ist.

    Zieh dir das ​PageSetup-Objekt mal in den Debugger und analysiere, welche Werte deine Druck so hergibt.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --