Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Seitenzahlen





Frage

Wie kann ich in einem Schriftkopf Seitenzahlen einfuegen? Seite von ...? Ich habe hinter Seite eine Zelle und hinter von eine Zelle. Barbara

Antwort 1 von Horf160

Hallo Barbara,

ob Du die Seitenzahl in eine Zelle eintragen kanns weiß ich leider nicht.

Du kannst Die Seitenzahlen aber in die Kopf- bzw. Fußzeile eintragen.
(Menü ANSICHT-Kopf- und Fußzeile)

Vielleicht reicht Dir das ja auch?

MfG
Thomas


Antwort 2 von coros

Moin Barbara,

gestatte mir zum Anfang eine Bemerkung. Ein Hallo am Anfang und ein Gruß am Ende würde Dein Beitrag gleich viel netter aussehen lassen. Dein Problem wird zwar an einem PC gelöst, aber die Helfer hier sind Menschen.

Nun zu Deiner Frage. Ich gehe mal davon aus, dass Du nicht die Variante meinst, die Thomas Dir vorgeschlagen hat, sondern dass in einer Zelle in Deinen Tabellenblättern diese Seitenanzahl erscheinen soll. Das ist leider nicht so ganz einfach. Es muss immer erst ermittelt werden, um wieviele Druckseiten es sich handelt und dann kann man die Seitenzahl in Zellen schreiben. Hierzu hätte ich ein Makro. Kopiere es in ein StandarModul in Deiner Datei.

Sub Seite_x_von_y_Seiten()
   Dim iRow As Integer, Letzte_Zeile As Integer, Einzelseite As Integer
   Dim Gesamtseitenzahl As String
   Columns("I").ClearContents
   Gesamtseitenzahl = ExecuteExcel4Macro("Get.Document(50)")
   Letzte_Zeile = Cells(Rows.Count, 1).End(xlUp).Row
   ActiveSheet.PageSetup.PrintArea = Range("A1:I" & Letzte_Zeile).Address
   Rows(Letzte_Zeile).Select
   ActiveSheet.DisplayAutomaticPageBreaks = True
   Range("I1").Value = "Seite 1 von " & Gesamtseitenzahl & " Seiten"
   For Einzelseite = 1 To ActiveSheet.HPageBreaks.Count
      ActiveSheet.HPageBreaks(Einzelseite) _
         .Location.Offset(0, 8).Value = "Seite " & _
            Einzelseite + 1 & " von " & Gesamtseitenzahl & " Seiten"
   Next Einzelseite
   ActiveSheet.PrintPreview
   Range("A1").Select
End Sub


Dieses Makro ruft die Seitenansicht auf und ermmitelt so die Anzahl der Druckseiten und wo eine neue Druckseite beginnt und schreibt die Seitenzahl in jede erste Zelle in Splate I als Text "Seite x von y Seiten". Das geht leider nicht anders, da man die Anzahl der Druckseiten nur durch die Druckfunktion oder eben durch die Seitenansicht ermitteln kann. Deine Vorgabe, dass hinter Seite eine Zelle und hinter von eine Zelle leer ist, in die Seitenzahlen eingetragen werden sollen, ist schlecht. Es muss vor jedem ausführen des Makros erst einmal die Seitenzahlen gelöscht werden. Das ist kein Problem, allerdings darf in der Spalte, in der die Zahlen eingetragen weren sollen, kein weiterer Eintrag in irgendeiner Zeile stehen, da immer die gesamte Spalte gelöscht werden muss, da nie bekannt ist, um wieviele Seiten es sich handelt. Daher schreibt das obige Makro den kompletten Text mit Seitenzahlen in Spalte I, die dann auch nur gelöscht werden muss. Man sollte daher die Seitenzahl immer in die letzte Spalte eines Blattes schreiben lassen, und diese Spalte leer lassen, wegen des Löschvorganges.

Da ich nicht weiß, ob Du Dich mit VBA (Visual Basic) auskennst, kommt hier eine kurze Anweisung, wie Du den Code in Deine Tabelle bekommst.

1. Markiere die Anweisung aus diesem Beitrag und Kopiere (Strg c) diesen.

2. Klicke in Deiner Exceldatei in der Menüleiste nacheinander auf Extras => Makro => Visual Basic Editor oder drücke die Tastenkombination Alt F11

3. In dem neu geöffneten Fenster suche auf der linken Seite nach dem Eintrag VBA Projekt(Hier der Name Deiner Tabelle) und klicke doppelt auf diesen Eintrag

4. Klicke danach nacheinander in der Menüleiste auf Einfügen => Modul.

5. Füge nun die vorher kopierte Anweisung in das rechte leere Fenster ein.

Damit das Makro aufgerufen werden kann, füge in eine vorhandene oder neue Symbolleiste eine Schaltfläche ein. Am besten man nimmt einen Befehl, den man aus der Kategorie Makros auswählt. Klicke mit der rechten Maustaste auf die neu eingefügte Schaltfläche und wähle in dem Menü den Eintrag “Makro zuweisen…“ aus. In dem dann geöffneten Fenster suchst Du den Namen des Makros (Der Makroname befindet sich in dem Makro in der Zeile Sub () ) und klickst diesen doppelt an. Nach Betätigen der Schließen-Taste, kann das Makro über die neue Schaltfläche gestartet werden.

Du solltest zum Abschluss noch die Sicherheitseinstellung, die beim Öffnen der Datei abgefragt wird, kontrollieren. Klicke dazu nacheinander in der Menüleiste wieder auf Extras => Makro und dann auf Sicherheit.... Gehe, falls nicht schon angezeigt, auf die Registerkarte Sicherheitsstufe und schaue dort nach, ob die Einstellung Mittel aktiviert ist. Wenn nicht, aktiviere diese Einstellung, da sonst der Code nicht ausgeführt werden kann. Beim nächsten Öffnen Deiner Datei kommt eine Abfrage, ob Makros aktiviert oder deaktiviert werden sollen. Klicke auf aktivieren und der Code wird ausgeführt.

Ich hoffe, Du kommst mit dem was ich geschrieben habe klar. Wenn nicht, melde Dich noch mal.

MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: