[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt Tabellenformatierungen

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

Tabellenformatierungen

Peter Sauseng
Beiträge gesamt: 484

12. Apr 2021, 10:43
Beitrag # 1 von 1
Bewertung:
(3319 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen!

Aus verschiedenen Gründen möchte ich eine Vielzahl von Tabellen per Skript formatieren.

Dabei bekommen die Tabellenköpfe spezielle Formatierungen (z.B. anderer Zellversatz = klappt mit Zellenformat, links und rechts außen keine Linie, innen waagrecht und senkrecht: feine Linie, ganz oben und ganz unten: fette Linie)

Es gibt verschiedene Herangehensweisen, wie man Zellen in Tabellenköpfen per Skript manipulieren kann:

Code
var myHeadRows = myTable.rows.itemByRange(0, myNumberHeadRows); 

var myHeadCells = myTable.cells.itemByRange(myTable.rows.item(0).cells.item(0), myTable.rows.item(myNumberHeadRows).cells.item(-1));

var myHeadAllCells = myHeadRows.cells.everyItem();


Die Anzahl der Reihen, die als Tabellenkopf formatiert werden sollen, erhalte ich per Dialogfeldeingabe (myNumberHeadRows);

In der Variable myHeadRows sind deshalb alle Tabellenzeilen enthalten, die Tabellenkopfzeilen werden sollen.

In der Variable myHeadCells alle Zellen im Bereich: 1. Zelle der Tabelle bis letzte Zelle in der letzten Tabellenzeile der Tabellenkopfzeilen.

In der Variable myHeadAllCells habe ich versucht, alle Zellen von myHeadRows mit cells.everyItem() zu definieren.


Wenn ich nun diese Zeilen in Tabellenkopfzeilen umwandeln möchte (RowTypes.headerRow), funktioniert das mit "myHeadRows" nur, wenn es in diesen Zeilen keine Zellverbindungen gibt und mit "myHeadAllCells" gar nicht.
Das ist noch kein Problem, da es mit "myHeadCells" funktioniert, wüsste nur gerne den Grund dafür.


Das Zuweisen der inneren Spaltenlinien (innerColumnStrokeWeight, innerColumnStrokeType etc.) funktioniert mit "myHeadRows" und mit "myHeadCells", aber nicht mit "myHeadAllCells".
Das Zuweisen der inneren Reihenlinien funktioniert nur mit "MyHeadCells".

Zusammenfassung: mit "myHeadCells" kann alles bearbeitet werden: auch andere Einstellungen, wie Mindesthöhe, Zeichenformate etc.

Das Problem dabei ist aber die Zuweisung des Bereiches (1. Zelle der Tabelle bis letzte Zelle in der letzten Tabellenzeile der Tabellenkopfzeilen).
Wenn diese letzte Zelle in letzten Zeile aber vertikal mit der Zelle darüber verbunden ist, werden die Zellen rechts von dieser Zelle aber nicht in den Bereich aufgenommen und damit dort gewünschte Einstellungen nicht vorgenommen.

Das kann man zwar umgehen, indem man abfragt, ob die betroffene Zelle in der letzten Spalte der Tabelle steht. Man muss aber berücksichtigen, dass die letzte Zelle eine Zeile darüber auch nicht in der letzten Spalte der Tabelle stehen muss und dass es auch waagrecht verbundene Zellen geben kann.

Einfacher wäre also die Verwendung von myHeadRows.cells.everyItem().
Weiß jemand einen Grund, warum mit dieser Zuweisung so viele Einstellungen nicht per Skript vorgenommen werden können?

Gruß, Peter
X

Aktuell

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
17.04.2024

Online
Mittwoch, 17. Apr. 2024, 10.00 - 10.30 Uhr

Webinar

Komplizierte, kleinteilige Aufträge; alles sehr speziell; seit Jahren bewährte Prozesse – da können wir nichts standardisieren und automatisieren! Das sagen viele Großformatdrucker – aber stimmt das wirklich, ist dem tatsächlich so? Günther Business Solutions und Impressed treten in einem Webinar den Gegenbeweis an. Experten beider Unternehmen zeigen, wie Großformatdrucker vom Einsatz zweier bewährter Lösungen profitieren können: • von advanter print+sign von Günther Business Solutions, dem ERP-System für den Großformatdruck, dass alle Phasen der Wertschöpfung im Large Format Printing abdeckt • von Impressed Workflow Server, der smarten PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt Über die Kombination beider Lösungen können Großformatdrucker ihre Prozesse mit modernen Workflows Schritt für Schritt automatisieren – und so zügig deutliche Zeit- und Kosteneinsparungen realisieren. Das Webinar sollten Sie sich nicht entgehen lassen – damit Sie keine Effizienzpotenziale mehr liegen lassen. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Ja

Organisator: Impressed / Günther Business Solutions

https://www.impressed.de/schulung.php?c=sDetail&sid=326

Und es geht doch: Automatisierung im Großformatdruck!