Seite 1 von 1
Gelöst : Seitenanzahl ermitteln in Calc
Verfasst: Fr, 13.11.2009 16:37
von keksi1970
Hi
also ich habe eine bestimmte anzahl Zeilen und möchte nun die Seitenanzahl beim Drucken ermitteln
Genauer :
die Zeilenanzahl bestimmt das Makro, die Überschrift wiederholt sich, der Druckbereich wird per Makro angepasst.
Wie kann ich nun die Seitenanzahl ermitteln ?
LG
Andreas
btw : ich habe xray versuch, aber entweder stehts nicht drin, oder ich suche wieder falsch

Re: Seitenanzahl ermitteln in Calc
Verfasst: Fr, 13.11.2009 17:54
von Stephan
Wie kann ich nun die Seitenanzahl ermitteln ?
Na durch Ausrechnen. Wenn die Zeilenanzahl bekannt ist und die Blattgröße bekannt ist ist das doch nur Mathematik unter Berücksichtigung beider und der Kopfzeile und der SEitenränder etc., die Seitenanzahl auszurechen.
Zumindest würde ich auf diesem WEge vorgehen.
Gruß
Stephan
Re: Seitenanzahl ermitteln in Calc
Verfasst: Fr, 13.11.2009 18:07
von keksi1970
sorry, ich steh grad auf dem Schlauch.
Also müsste ich die Grösse
des oberen Randes
+ unterer Rand
+Kopf/Fusszeile
+Wiederholende Überschrift
+ Höhe der Zellen
berechnen,
das Ergebnis durch die Höhe des Blattes teilen
um die Seitenanzahl zu bekommen ?
Das erscheint mir doch zu umständlich, von der Dauer des Vorgangs abgesehen.
Warum gibts da kein druckbereich.usedArea.pages.count ?
Und warum kann Calc Automatisch in der Fusszeile die Seitenzahl zeigen ?
Kann man die nicht auslesen ?
Trotzdem Danke erstmal, aber diesen komplizierten weg werde ich wohl nicht beschreiten
(cm in pixel umrechnen usw.)
LG
Andreas
Re: Seitenanzahl ermitteln in Calc
Verfasst: Fr, 13.11.2009 18:32
von Stephan
Also müsste ich die Grösse
des oberen Randes
+ unterer Rand
+Kopf/Fusszeile
+Wiederholende Überschrift
+ Höhe der Zellen
berechnen,
das Ergebnis durch die Höhe des Blattes teilen
um die Seitenanzahl zu bekommen ?
im Prinzip ja, wobei ich glaube DEine Aufzählung ist nicht vollständig, z.B. haben Kopfzeilen wohl auch zu berücksichjtigende Abstände zu SEitenrändern
Das erscheint mir doch zu umständlich
ja und? Viele Dinge sind umständlich und trotzdem muß man sie tun.
Ich habe das englische Forum abgesucht, dort steht keine LÖsung und ich habe deshalb die vorgeschlagen die mir möglich erschien.
von der Dauer des Vorgangs abgesehen
ich denke nicht das das Ganze mehr als 1-2 Sekunden beansprucht, wenn überhaupt
Warum gibts da kein druckbereich.usedArea.pages.count ?
Frage die Entwickler. z.B. Über einen issue ist das möglich:
viewtopic.php?f=3&t=12975
Und warum kann Calc Automatisch in der Fusszeile die Seitenzahl zeigen ?
Weil es dafür einen entsprechenden Feldbefehl gibt.
Kann man die nicht auslesen ?
zumindest mir ist nicht bekannt wie das in Calc möglich wäre
Gruß
Stephan
Re: Seitenanzahl ermitteln in Calc
Verfasst: Fr, 13.11.2009 18:46
von keksi1970
danke für die ausführliche Antwort.
Ich werd es andersrum machen :
Ich gebe dem Druckbereich die Seitenzahl vor

nach 40 Zeilen (Querformat) Seitenumbruch einfügen und diese Anzahl zählen
Diese + 1 ergibt automatisch die Anzahl der Seiten (oder Irre ich mich ?)
Das probier ich 4-5 mal, habe die richtige Anzahl der Zeilen und sperre die verstellbarkeit der Zeilenhöhe(Schriftgrösse, usw)
LG
Andreas
Re: Seitenanzahl ermitteln in Calc
Verfasst: Sa, 14.11.2009 15:00
von keksi1970
und es geht doch
vorraussetzung ist :
1. einen Druckbereich definieren (da das Makro die zeilen füllt, ziemlich einfach)
2. Umschalten in die Seitenumbruch Vorschau
sobald man dies getan hat, kann man mit
oDoc = THisComponent
oSheet = oDoc.sheets(0)
aPageBreaks() = oSheet .getRowPageBreaks()
Anzahl = ubound(aPagebreaks())-1
die Anzahl der Seitenumbrüche auslesen (-1) ergibt die Seitenanzahl
mit aPagebreaks(i).position auch die einzelnen Positionen selber
nun ist es einfach, bsp 3 Zeilen für einen Übertrag einzufügen.
Das macht diese Datei
LG
Andreas