Übetrag bei Bedarf?

Hallo Zusammen!

Ich habe eine Tabelle, welche immer unterschiedlich lang ist (mal passt alles auf eine Seite, mal wird eine zweite benötigt)

Nun meine Frage:

(der Druck wird mittels Makro gestartet)

Besteht die Möglichkeit in dem Makro abzufragen, ob der Ausdruck auf eine Seite passt,
wenn nein richte eine Zwischensumme auf Seite 1 und einen Übertrag auf Seite zwei ein
wenn ja, dann „normal“ drucken

Vielen Dank schonmal im Voraus

LE

Ich habe eine Tabelle, welche immer unterschiedlich lang ist
(mal passt alles auf eine Seite, mal wird eine zweite
benötigt)
Besteht die Möglichkeit in dem Makro abzufragen, ob der
Ausdruck auf eine Seite passt,
wenn nein richte eine Zwischensumme auf Seite 1 und einen
Übertrag auf Seite zwei ein
wenn ja, dann „normal“ drucken

Hi LE,
ist damit deine andere Anfrage, auf die ich gerade geantwortet habe hinfällig?

Zu dieser Afrage, ja das geht, minimal 2 Wege.
Heutiges Excel bietet von sich aus (auch per Makro) nichts an um zu erfahren ob z.B. Zeile 56 im Druckblatt1 oder 2 erscheint.

Weg1: Mit einem Excel4-Makro Befehl kann man das erfahren

Weg2: Wieviele Zeilen auf ein Blatt passen liegt ja auch an gewählter Zell/Schriftgröße. (Einstellungen im Drucker alles auf eine Seite zu zoomen erschweren das Ganze zu berechnen).

Nun kannst du ja einfach in der Seitenvorschau sehen, wieviele Zeilen in dem ersten Ausdrucksblatt erscheinen. Nun erhöst du sukkzessive die Höhe der vorletzten Zeile die erscheint.
Solange, bis im ersten Ausdrucksblatt der Seitenvorschau die letzte Zeile nicht mehr erscheint.

Analog dazu auch mit dem Excel4_funktion vorgehen.

Damit hast du (Zeilennummer kennst du ja, nennen wir sie Z) mittels
msgbox cells(Z,1).Top
ja die genaue Anzahl der Pixel die bei deiner Einstellung auf der ersten Seite erscheint.

D.h. pro Blatt werden Zeilenmäßig gesehen sagen wir mal 500 Pixel gedruckt.

Das war quasi alles manuell, eine Art Eichung, jetzt mußt du nur im Makro prüfen, wieviele Top-Pixel die Zelle unter der letzten Zeile deiner Tabelle hat.

Hilft dir diese Info weiter?

Gruß
Reinhard

Hmmm… erstmal Danke Dir Reiner! Hast mir hier schon oft geholfen^^

Und ja, es ist immernoch die eine Tabelle^^ auch meine dritte frage bezieht sich darauf!

Nun, wenn ich aber Deine Gedanken richtig verstanden habe, ist doch immernoch das Problem, wenn in einer Zeile ein Zeilenumbruch stattfindet (ist in Spalte C so eingerichtet da die Infos nicht immer in eine Zeile passen) stimmen die Angaben ja nicht mehr, oder habe ich das dann doch falsch verstanden?

LG

LE

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Nun, wenn ich aber Deine Gedanken richtig verstanden habe, ist
doch immernoch das Problem, wenn in einer Zeile ein
Zeilenumbruch stattfindet (ist in Spalte C so eingerichtet da
die Infos nicht immer in eine Zeile passen) stimmen die
Angaben ja nicht mehr, oder habe ich das dann doch falsch
verstanden?

Hallo LE,

laßen wir mal die Excel4Makros weg.
Und Schncickschnack wie im Druckermenue einstellen auf die Seite zoomen .

Dann hast du doch, wenn du mal in die Spalte A die zahlen von 1-80 einträgst, dann in der Seitenvorschau das Bild der ersten Druckseite, und da werden je nach Schriftgröße halt nur 53,57, sonstwieviele Zeilen angezeigt!
Und natürlich wenn da in einigen Zellen mehrzeilige Einträge stehen, entsprechend weniger Zeilen.

D.h. bezogen auf deine Tabelle kannst du sagen, es werden x Zeilen angezeigt.

Und diese x Zeilen haben eine Pixelhöhe von P Pixeln. Wie groß P ist bekommst du raus wenn du die Top-Eigenschaft der Zelle/zeile die nicht angezeigt wird ausliest.

Wenn also die zeilen von 1 bis 53 angezeigt werden, so ist die Top-Eigenschaft der 54ten Zeile die Anzahl der Pixel die angezeigt werden.

Zelle A1 hat die Top eigenschaft 0, Zelle A2 die Top Eigenschaft 0 plus Höhe von A1, usw…

Dies ist aber nur ein grober Wert, um den exakten Pixelwert herauszufinden was dein Drucker mit den gewählten Einstellungen ausdruckt, mußt du, an sich eine beliebige Zelle der ersten Seite in der Höhe solange erhöhen, bis unten die letzte zeile nicht mehr auf der ersten sondern auf der zweiten Seite ausgedruckt würde.

Dann hast du durch Top der ex-letzten Zeile die Pixelhöhe, die dein Drucker pro Blatt ausdrcukt.

Jetzt hast du eine Tabelle, die Zeile/Zelle unterhalb des letzten Eintrages hat die Top-Eigenschaft 534, durch wie gesagt manuelles Ausprobieren weißt du aber daß dein Drucker nur 524 Pixel pro Seite druckt, ergo, es ergeben sich 2 Ausdruckseiten.

Dementsprechend mußt du dann die Übertragszeilen einfügen.

War das verständlicher?

Gruß
Reinhard

Hallo,
die einfachste Loesung, immer auf ein Blatt zu drucken bei variabler Groesse, ist doch die Einstellung anpassen im Druckmenue. Dann gehts immer aufs Blatt, mit allerdings irgendeiner Skalierung. Mehrseitige Exceltabellen kann man ebenso auf 2 oder mehr Seiten zwingen.
Gruss Helmut

Hallo Reinhard,

ja danke, verstanden habe ich es jetzt auf jeden Fall. Hatte halt nur gehofft, dass es einfacher wär…

Aber gut, ists halt etwas ausprobieren und etwas testen dann klappt das schon.

Danke für die große Hilfen (in allen drei Threats)

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo LE,

ja danke, verstanden habe ich es jetzt auf jeden Fall. Hatte
halt nur gehofft, dass es einfacher wär…

vielleicht ist das hier was für dich

http://www.excel-center.de/freeware/artikel.php?ide=…

oder google mal, Stichwort Übertrag, da gibt es ne Menge Links, einer passt vielleicht auch für dich

Ansonsten kann ich Access empfehlen, da sind Zwischensumme und Übertrag im Bereicht leicht einzurichten

Gruß
Marion