Formel "Seitenzahl" im Rechenblatt?

Hallo!

Wir haben für den Text einer Fotodoku ein Textfeld, das unten bündig neben dem Bild (Foto in Bild-Container) stehen soll. Dafür haben wir einen Container mit Rechenblatt erstellt, mit mehrzeiligem Text, der am unteren Rand ausgerichtet ist. Das klappt gut.
Der Text sieht folgendermaßen aus:
__

Bild 1: XXX_....
Aufnahmedatum: XX.XX.XXX

Xxxx Überschrift

Xxxx Erläuterungstext
___

Wir haben pro Seite 2 Bilder. Als wir den Text noch in einem Textfeld hatten, hatten wir den Text "Bild 1", "Bild 2" mit Formeln hinterlegt (Seite*2-1 bzw. Seite*2), so dass beim Kopieren der Seite bei der nächsten Seite automatisch "Bild 3" und "Bild 4" stand. Das klappt im Rechenblatt nun nicht mehr.
Gibt es dafür vielleicht nun eine andere Lösung?

(Wir arbeiten mit RagTime 6.6 für Windows.)

Re: Formel "Seitenzahl" im Rechenblatt?

#13751 On 4 Juni, 2024 18:00 Andrea Moser said,

Danke auch allen anderen für die Kommentare.

PS. "Seitenzahl" war nicht der richtige Begriff. Es geht um die Formel "Seite", die zur Benennung der Bild-Nummer genutzt werden soll.

Siehe meine Antwort an Michael, es klappt schon fast.

Re: Formel "Seitenzahl" im Rechenblatt?

#13749 On 4 Juni, 2024 07:32 Thomas Kaegi said,

Hallo Andrea

Ich verstehe nicht ganz, wie deine Anordnung funktioniert. Ich möchte einfach darauf aufmerksam machen, dass die Verwendung der Funktion "Seite" in einem Rechenblatt dann problematisch sein kann, wenn das Rechenblatt über mehrere Seiten läuft. Da musste jeweils die Seitennummer im Layout mit dem Werkzeug "Grafischer Text" angebracht werden. Das ist für dich natürlich keine Lösung, Es könnte aber ein Hinweis darauf sein, weshalb du mit der Funktion "Seite" im Rechenblatt Probleme hast.

Gruss, Thomas

Re: Formel "Seitenzahl" im Rechenblatt?

#13748 On 4 Juni, 2024 07:32 Thomas Kaegi said,

Hallo Andrea

Jetzt erinnere ich mich wieder. Das Rechenblatt durfte nicht in einem Stammlayout verwendet werden, z.B. für eine Kopfzeile, welche in 3 Zellen die Kapitelnummer, den Kapiteltitel und die Seitennummer enthielt. Mit Grafischem Text klappte es.

Gruss, Thomas

Re: Formel "Seitenzahl" im Rechenblatt?

#13747 On 3 Juni, 2024 23:03 Michael Vaerst said,

Hallo Andrea,

das geht auch in einer Rechenblattzelle mit mehrzeiligem Text.

1. Erzeuge einen Container mit Rechenblatt.
2. Dehne die Zelle auf die beabsichtigte Größe für den Bildtext aus.
3. Formatiere die Zelle als "Mehrzeiliger Text".
4. Jetzt legst Du eine neue Textkomponente an (Menü Fenster -> Neue Komponente -> Text)
5. In diese Textkomponente trägst Du z.B. ein : Seite 1 ... Jetzt die Ziffer markieren und im Formeleditor die Formel (z.B. Seite*2) eintragen, wie Du das vorher auch im Textcontainer gemacht hast.
6. Öffne nun das Inventar und ziehe die eben erstellte Textkomponente in die mehrzeilige Zelle. Den restlichen Text kannst Du dazukopieren.
7. Wenn Du auf diese Weise die zwei Container für die beiden Bildtexte auf der Seite erstellt hast und hast sie platziert, kannst Du die Seite kopieren und sie beliebig oft anfügen. Die Formeln funktionieren.

Bei Bedarf sende ich das Probedokument.

Ich hatte mich gefragt, wozu das alles gut sein soll, wenn der Bildtext ohnehin schon in einem Rechenblatt ist. Dort kann man dann ja alles per Zellenmaße ausrichten ... Es macht aber tatsächlich dann Sinn, wenn der gesamte Textblock immer unten bündig sein soll, egal wie lang der Erläuterungstext zum Bild wird. Insofern hoffe ich, die Lösung hilft weiter.

Gruß, Michael

Re: Formel "Seitenzahl" im Rechenblatt?

#13750 On 4 Juni, 2024 17:57 Andrea Moser said,

Hallo Michael,
vielen Dank für die Erläuterung.
Ja, das Wichtige für uns ist, dass der Textblock unten bündig ist. Die Bild-Erläuterungen sind immer unterschiedlich lang.

Mit deiner Vorgehensweise klappt es tatsächlich, dass sich beim Kopieren der Seite die Bildnummer durch die Formel automatisch fortschreibt.
Nur fügt sich bei mir die Textkomponente wieder oben bündig ein und auch wenn ich dann die Zelle markiere und bei den Rechenblattinformationen die Ausrichtung "unten" wähle.
Wie hast du es hinbekommen, dass alles tatsächlich nun unten bündig in der Zelle steht?

Gruß, Andrea

Re: Formel "Seitenzahl" im Rechenblatt?

#13752 On 4 Juni, 2024 21:46 Michael Vaerst said,

Hallo Andrea,

In die mehrzeilige Rechenblattzelle des Containers mit den Angaben zum Bild habe ich genau den Text eingetragen, den Du (s.o.) zwischen den Balken notiert hattest (jedoch ohne "Bild 1" zu Beginn). Der Textblock beginnt jetzt quasi mit dem Doppelpunkt ...

Die mehrzeilige Zelle jetzt über das Infopanel auf Ausrichtung unten einstellen.
Anschließend habe ich eine neue Textkomponente erzeugt und folgenden Text eingetragen : "Bild 1"
Dann habe ich in dieser Textkomponente die "1" markiert und mit der Formel "Seite*2-1" versehen -> dann Textkomponente schließen.
Der nächste Schritt ist -> Das Inventar öffnen und die soeben angelegte Textkomponente per drag & drop ganz am Anfang vor dem Doppelpunkt in der mehrzeiligen Zelle platzieren.
Das war's schon ...
Mit dem zweiten Container für Bild 2 musst Du das separat machen, da er ja eine separate Textkomponente benötigt, die eine andere Formel enthält.

Gruß, Michael

Re: Formel "Seitenzahl" im Rechenblatt?

#13753 On 5 Juni, 2024 13:45 Andrea Moser said,

Danke für die genaue Erläuterung. Beim dritten Versuch hat es bei mir nun auch funktioniert. Hilfreich war, dass ich vor dem ":" noch Text stehen hatte und so die Text-Komponente zwischen zwei Zeichen schieben konnte und sie dadurch nicht immer automatisch in die gesamte Zelle gesprungen ist. Das war mein Fehler am Anfang. Jetzt bleibt mein Text auch unten bündig.
(sieh meine zweite E-mail dazu als überholt an :-).

Nochmal Danke für die Hilfe!

edit: UND - der Cursor muss bereits im Text blinken, damit man die Text-Komponente zwischen die Zeichen setzen kann.

Re: Formel "Seitenzahl" im Rechenblatt?

#13745 On 3 Juni, 2024 19:57 werkwelt said,

Das Rechenblatt kann in einem Container einer Papierseite untergebracht sein. Und neben oder unter oder sogar in der Rechenblattcontainer-Fläche kann zusätzlich derjenige Textcontainer plaziert werden, in dem vorher schon die Seitenzahlformel funktionierte.
Das schrieb ich nun aus der Erinnerung, ohne meine Angaben nochmals zu prüfen. Ich mache jetzt aber noch einen Versuch dazu.

RagTime, FileMaker, AppleScript, Zeichenmaschine, SVG und der Arc Fritz FM geben Flügel.

Mit freundlichen Grüßen,
Norbert Lindenthal

Re: Funktion "Seite" im Rechenblatt?

#13746 On 3 Juni, 2024 20:22 werkwelt said,

etwas genauer: Papierseite mit Layout, das auf einem Stammlayout basiert. Das Stammlayout mit Rechenblatt-Container. Mit dem Textwerkzeug (Werkzeug-Symbol A) den Seitenzahlplatz aufsuchen, klicken und per Layout-Funktion die Funktion »Seite« einfügen.

Für Doppelseiten-Druck (mit gespiegelter Anordnung) kann ich hier nicht schnell die Anleitung geben. Deshalb die »Seite«-Funktion mittig plazieren mit Text-Ausrichtung »Zentriert«.

RagTime, FileMaker, AppleScript, Zeichenmaschine, SVG und der Arc Fritz FM geben Flügel.

Mit freundlichen Grüßen,
Norbert Lindenthal

Re: Funktion "Seite" im Rechenblatt?

#13755 On 11 Juni, 2024 11:02 Thomas Kaegi said,

Hallo Andrea

Grundsätzlich würde ich nicht die Bildnummer mit der Seitennummer verknüpfen. Das Dokument wird doch wahrscheinlich noch ein Deckblatt erhalten, vielleicht auch noch eine Erläuterungsseite, so dass die Formel mit der Seitennummer die Bidler falsch nummerieren würde.

Ich habe deshalb einen völlig anderen Approach gewählt:

Ich erstelle ein neues Dokument, beginnend mit Stammseite. Auf dieser kann ich, wenn alle Bilder gleich gross sind, links zwei Rahmen (kein Inhalt!) für die Bilder anlegen. Sind die Bilder von verschiedener Grösse, mache ich das erst im Layout. Rechts lege ich vertikal übereinander 2 Rahmen (kein Inhalt!) mit z.B. diesen Dimensionen an: Höhe 12,5 cm, Breite 5 cm. Dann ziehe ich eine vertikale Pipeline vom oberen in den unteren Rahmen und eine zweite von dort zurück zum oberen Rahmen. (Ich verwende bewusst den Begriff „Rahmen“, denn zu Containern werden diese Rahmen erst, wenn sie einen Inhalt haben.) Ggf. müssen die Unterkanten der Rahmen links und rechts paarweise aufeinander ausgerichtet sein.

Nun lege ich eine neue Komponente an, ein Layout, basierend auf dem eben erstellten Stammlayout – das Fenster mit dem Stammlayout kann dann geschlossen werden. Ggf. lege ich im Layout links zwei Rahmen für die Bilder an, die Unterkante ausgerichtet auf die Unterkante der beiden Rahmen rechts. Dann lege ich eine neue Komponente Rechenblatt an, die im eigenen Fenster geöffnet wird. Die Spalte A mache ich 5 cm breit und wähle als Inhaltsart „Mehrzeiler" mit Ausrichtung „unten", Dann wähle ich so viele Zeilen aus, wie das Dokument schliesslich Bilder enthalten soll – da ich diese Zahl nicht kenne, habe ich mal Zeilen 1:300 ausgewählt. Die Zeilenhöhe dieser 300 Zeilen lege ich mit der im Stammlayout für die Container rechts gewählten Höhe fest, also in meinem Beispiel 12,5 cm. Dann schliesse ich das Fenster mit dem Rechenblatt und gebe diesem im Inventar den Namen „Legende“.

Die Schriftvorlage „Standardschrift“ ist mit 10 Pt. definiert, einer zweiten (12 Pt., fett) gebe ich den Namen „Gross“. Die Absatzvorlage Standardschrift lasse ich unverändert, d.h. mit Zeilenabsatnd „Auto“ ± 0.

Jetzt sichere ich das so erstellte Dokument als Formularblock. Das ist wichtig für das automatische Seitenanfügen, arbeite aber weiter an diesem Formularblock.

Du hast in deiner Frage das Format der Legende angegeben. Ich nehme zusätzlich an, dass die Zeilen mit der Bildnummer und der Überschrift mit der Schriftvorlage „Gross“ geschrieben werden sollen, die anderen in Standardschrift.

Im Inventar lege ich eine neue Komponente „Rechenblatt“ an, der ich den Namen „Bildtexte“ gebe. Das Rechenblatt. wird in einem neuen Fenster göffnet. Die Breite der Spalten A:E lege ich wie folgt fest (in cm): 1,4/4/4/5/5. In der ersten Zeile schreibe ich (für die Titel der Spalten B:E beziehe ich mich auf die Bezeichnungen in deiner Frage): Bild#, Bildtitel, Aufnahmedatum, Überschrift, Erläuterungstext. Diese Zellen versehe ich mit Schriftvorlage „Gross“. Die Spalten A und C richte ich zentral aus. Spalte F weise ich Inhaltsart „Mehrzeiler“ (Ausrichtung unten) zu. Den Spalten A, B und D weise ich das Schriftformat „Gross“ zu. Ab Zeile 2 werden später die Textbausteine für die Bildlegenden eingesetzt, die dann per Formel ins Rechenblatt „Legende“ übertragen werden.

Bis hierher ist eigentlich alles Routine. Der nächste Schritt ist eine Vorbereitung für die Formelerstellung:
In Zelle F1 setze ich mit Schriftvorlage „Gross“ den Text „Bild “, in Zelle G1 mit Schriftvorlage „Standardschrift“ den Text „Aufnahmedatum: “.

Nun wähle ich Zelle H1 und öffne die Formelpalette. Die Formel, die ich in diese Zelle einsetze, besteht aus zwei Teilen, die schliesslich mit & zusammengehängt werden. Ich erläutere die beiden Teile aber separat. Beide Formelteile benützen die Funktion VSuchlauf. Der Bereich der Suchläufe ist so definiert, dass die Formeln für die angenommenen 300 Bilder stimmen. Das Bereichsende (im Beispiel = 301) könnte bei weniger Bildern reduziert, bzw. müsste bei mehr Bildern erhöht werden.

Teil 1 trägt die Bildnummern in Spalte A ein:

VSuchlauf(B1:B301;1;;SetzeZelle(Wenn(LfdZelle=‚‘;'';LfdIndex);A:A;LfdIndex+1))

Die Formel trägt in Spalte A immer die Nummer des nächsten freien Bildes ein (und löscht diese Nummer, falls der Bildtitel der letzten Zeile wieder gelöscht wurde).

Teil 2 setzt die Textbausteine zu vollständigen Bildlegenden zusammen und setzt diese in Spalte A des Rechenblatts „Legende“ ein. Die in der Formel mehrfach verwendete Funktion „Zeichen(11)“ ergibt das Zeichen „Neue Zeile im gleichen Absatz“, wechselt also zur nächsten Zeile oder fügt bei doppelter Verwendung eine Leerzeile ein. Überlall wo in der Referenz das Zeichen # verwendet wird, bedeutet das „Übernehmen inkl. Format“.

VSuchlauf(B1:B301;LfdIndex>1;;Wenn(LfdZelle≠'';SetzeZelle(#$F$1&Text(LfdIndex-1)&': '&LfdZelle&Zeichen(11)&#$G$1&Text(Index(C:C;LfdIndex))&Zeichen(11)&Zeichen(11)&Index(#D:D;LfdIndex)&Zeichen(11)&Zeichen(11)&Index(#E:E;LfdIndex);Legende!$A:$A;LfdIndex-1);Wenn(Index(A:A;LfdIndex);SetzeZelle('';Legende!$A:$A;LfdIndex-1))))

  • LfdIndex>1 als Bedingung bedeutet, dass die Kopfzeile der Tabelle natürlich nicht als Bildlegende verwendet werden darf.
  • Wenn(LfdZelle≠’': Wenn die Spalte B nicht leer ist, soll die Hauptfunktion der Formel ausgeführt werden (Zusammenbau der Legende + Übertragung)
  • SetzeZelle(Zusammengebaute Bildlegende;Legende!$A:$A;LfdIndex-1): Setzt die zusammengebaute Bildlegende in die der Bildnummer entsprechende Zelle von Legende!A:A ein.
  • #$F$1&Text(LfdIndex-1)&': '&LfdZelle&Zeichen(11)&#$G$1&Text(Index(C:C;LfdIndex))&Zeichen(11)&Zeichen(11)&Index(#D:D;LfdIndex)&Zeichen(11)&Zeichen(11)&Index(#E:E;LfdIndex): Zusammenbau der Textbausteine
  • Der Rest der Formel löscht den Text in Legende!A:A, wenn in der Zeile kein Bildtitel, jedoch eine Bildnummer steht.

Als Letztes versehe ich die Kopfzeile der Tabelle „Bildtexte“ mit einem Hintergrund, wähle die Spalten F:H aus und befehle im Rechenblattmenü „Zeilen/Spalten ausblenden“. Dann sichere und schliesse ich das Formular.

Im abgerissenen Formular kann ich nun Bild für Bild im Rechenblatt „Bildtexte“ die Textbausteine einsetzen und diese werden als Legende übertragen. Benötigte Seiten werden automatisch angefügt.

Leider hat im Moment RagTime (Version 6.6.6 und 7.0.4) da noch einen Bug: Damit die Legenden wie gewünscht dargestellt werden, muss ich im Layout eine der Bildlegenden anklicken, dann den Spaltenkopf A auswählen, die Inhaltsart zu „Auto“ und wieder zu „Mehrzeiler“ wechseln.

Gruss, Thomas