13.3k Aufrufe
Gefragt in Tabellenkalkulation von berpre Mitglied (445 Punkte)
Hallo Excel Freunde,

ich möchte in verschiedenen Excel Tabellen, mit mehreren gleich aufgebauten Seiten jeweils in den Zellen E 5 und G 5 die Seitenzahl und die Gesamt Seitenanzahl anzeigen lassen.

Die Seitenanzahl soll nicht in der Kopf und Fußzeile angegeben werden.

Meine Frage:

Geht dies über eine Formel oder muss dies in VBA geschrieben sein?

Wer kann mir bei dieser Aufgabe helfen?

Ich benutze Excel 2007

Gruß Bernd

8 Antworten

0 Punkte
Beantwortet von saarbauer Profi (15.6k Punkte)
Hallo,

ist etwas schwer verständlich, aber ich versuche es mal.

Sind deine Tabellen alle in einer Mappe?

Wenn diese in einer Mappe sind wäre es mit VBA bestimmt machbar, vielleicht auch anders. Es hängt natürlich auch von der Tabelle ab, hat die eine oder mehrere Seiten? Was ist mit Kopfzeilen in der Tabelle u.ä. ?

Könntest du eine Beispieltabelle zur Verfügung stellen?

Gruß

Helmut
0 Punkte
Beantwortet von berpre Mitglied (445 Punkte)
Hallo Helmut,

besten Dank für Deine Antwort.

Wie gewünscht eine Beispiel-Datei

http://www.file-upload.net/download-7504000/St--ckliste_Original---Kopie-1.xlsm.html

Ich habe die Original Datei abgeändert. Es sollen jeweils in den Zellen K11 und P11 die Seitenzahl und die Gesamt Seitenanzahl anzeigen werden.

Gruß Bernd
0 Punkte
Beantwortet von saarbauer Profi (15.6k Punkte)
Hallo,

so auf anhieb habe ich keine Lösung.

Gruß

Helmut
0 Punkte
Beantwortet von nighty Experte (6.5k Punkte)
hi :-)

folgend 2 beispiele

gruss nighty

Sub SeitenInfo()
Dim AktiveSeite As Integer
Dim AlleSeiten As Integer
Dim Seitenzaehler As Integer
AcNr = ActiveSheet.Index
For Seitenzaehler = 1 To Worksheets.Count
AktiveSeite = Worksheets(Seitenzaehler).HPageBreaks.Count + 1 * Worksheets(Seitenzaehler).VPageBreaks.Count + 1
AlleSeiten = AlleSeiten + AktiveSeite
If Seitenzaehler = AcNr Then Cells(1, 2) = AktiveSeite
Next Seitenzaehler
Cells(2, 2) = AlleSeiten
End Sub


moegliche parameter der folgenden function
1 fuer das active blatt
2 fuer alle blaetter

Function SeitenInfo1(Schalter As Integer) As Integer
Dim AktiveSeite As Integer
Dim AlleSeiten As Integer
Dim Seitenzaehler As Integer
Dim AcNr As Integer
AcNr = ActiveSheet.Index
For Seitenzaehler = 1 To Worksheets.Count
AktiveSeite = Worksheets(Seitenzaehler).HPageBreaks.Count + 1 * Worksheets(Seitenzaehler).VPageBreaks.Count + 1
AlleSeiten = AlleSeiten + AktiveSeite
If Seitenzaehler = AcNr And Schalter = 1 Then SeitenInfo1 = AktiveSeite
Next Seitenzaehler
If Schalter = 2 Then SeitenInfo1 = AlleSeiten
End Function
0 Punkte
Beantwortet von berpre Mitglied (445 Punkte)
Hallo nighty,

besten Dank für Deine Antwort.

wäre es zu viel verlangt, wenn Du mir diesen Code in meine Beispiel-Datei einfügen würdest?
Da ich von VBA überhaupt keine Ahnung habe weiß ich nicht :
1) Wo dieser Code hinkommt.
2) Wie dieser Code angesprochen werden muß.

Für Deine Mühe möchte ich mich bedanken.

Gruß Bernd
0 Punkte
Beantwortet von nighty Experte (6.5k Punkte)
hi :-)

beschreibung wie die function einzufuegen ist

gruss nighty

p.s.
hatte ich schon erwaehnt,das es laenger dauerte die beschreibung zu schreiben als die function O_o

'die function ist einzufuegen unter alt+f11>einfuegen>modul>vbeditor_schliessen
'die function ist nun unter excel einfuegen>function>benutzerdefiniert>seiteninfo1 aufrufbar
'oder z.b. =SeitenInfo1(1) fuer 1 worksheet oder =SeitenInfo1(2) fuer die ganze mappe

Function SeitenInfo1(Schalter As Integer) As Integer
Dim AktiveSeite As Integer
Dim AlleSeiten As Integer
Dim Seitenzaehler As Integer
Dim AcNr As Integer
AcNr = ActiveSheet.Index
For Seitenzaehler = 1 To Worksheets.Count
AktiveSeite = Worksheets(Seitenzaehler).HPageBreaks.Count + 1 * Worksheets(Seitenzaehler).VPageBreaks.Count + 1
AlleSeiten = AlleSeiten + AktiveSeite
If Seitenzaehler = AcNr And Schalter = 1 Then SeitenInfo1 = AktiveSeite
Next Seitenzaehler
If Schalter = 2 Then SeitenInfo1 = AlleSeiten
End Function


fuer makros einfuegen suche ich vorsichtshalber mal im netz ^^
da gibt es ja sovieles was erwaehnenswert waere hmm
0 Punkte
Beantwortet von nighty Experte (6.5k Punkte)
hi :-)

hier ein link fuer das einfuegen von makros ^^

www.online-excel.de/excel/singsel_vba.php?f=44

gruss nighty
0 Punkte
Beantwortet von berpre Mitglied (445 Punkte)
Hallo nighty,

besten Dank für Deine Beschreibung und Hinweis.

Bin nun mal kein Excelprofi und VBA Kenner.

Meine Heimat ist Statik und CAD.

Nochmals besten Dank für Deine Arbeit.

Gruß Bernd
...