@ Uwe
Danke :-)
Dein Codeschnipsel ist keinesfalls hinfällig, sondern die perfekte und elegante Lösung für 5 von 6 Sprachversionen!
Habe nur die Anzahl der gesuchten Zeichen auf 4-9 erweitern müssen, sonst gab es in meinem Testkapitel komischerweise keine Treffer.
Die sechste ist besagte englische Version.
Dein Code funktioniert auch hier erstklassig, allerdings nur bei etwa 70% des Kataloges, der Rest besteht leider aus verschachtelten Tabellen.
Zunächst ein Mal: Deine Annahme ist richtig, die Kennziffer steht immer in der letzten Spalte der Tabelle, und alle Werte müssen durch X000 ersetzt werden (Wobei X0000 hier nur ein Beispiel ist).
Die verschachtelten Tabellen sehen so aus:
Eine Tabelle in oben beschriebenem Format ZWEI MAL in eine weitere, dreispaltige Tabelle eingebettet ist (Im Katalog-Tool auswählbar als Layoutvariante 2).
Beispiel: https://dl.dropboxusercontent.com/...157568/Beispiel2.jpg Der Aufbau ist dann: Spalte 1: Tabelle, Spalte 2: Artikelbild, Spalte 3: Nochmal die Tabelle.
Der doppelte Aufbau ist nötig, damit die Artikelbilder bei gerade oder ungeraden Seiten jeweils links oder rechts von der Tabelle stehen. Die Tabellen liegen also immer am Innenrand an und ragen über die Seite hinaus. Sichtbar ist also je nach Seite entweder die linke, oder die rechte Tabelle und das Artikelbild.
Daraus folgt, dass die Kennziffern natürlich in BEIDEN Tabellen geändert werden müssen.
Eigentlich bin ich an dieser Stelle vollkommen zufrieden und glücklich, denn 70% Automatik und 30 % manuellem Markieren von Tabellenspalten in Verbindung mit deinem Codeschnipsel spart mir schon einen ganzen Haufen Zeit. Aber ich möchte ja bei der ganzen Aktion auch etwas lernen ;-)
Deshalb erlaube ich mir hier mal den Versuch, dein Script zu verstehen: Das Script sucht im offenen Dokument Tabellen.
Wenn es eine findet, wird von einer unbekannten Anzahl an Spalten die letzte ausgewählt (-1).
-> Möchte ich die vorletzte Spalte auswählen hätte ich den Wert (-2), für die erste Spalte (0) und für die dritte (3).
Dann geht es weiter zur Kopfzeile (cells 0).
-> Auch hier: Dritte Zeile: 2, letzte Zeile -1 ??
Mit .text(0) kann ich nichts anfangen. Habe ich hier die Möglichkeit, Textrahmen in einem Tabellenfeld zu zählen?
Jedenfalls wird in der letzten Spalte, in der ersten Zeile, im ersten Textfeld(??) der Wert /Code Nummer/ gesucht.
Wird der gefunden, wird die letzte Spalte mit der Variable myNewContend gefüllt.
Dabei sorgt
"(var c=1;c<lastColumn.cells.length;c++){"
dafür, das alle Zeilen außer der Ersten angesprochen werden. (Habe das durch ändern der Zahl ausgetestet)
Der nächste Schritt wäre also, die verschachtelten Tabellen anzusprechen. Das entsprechende Script müsste, für mein Verständnis, dann doch folgende Funktion erfüllen:
- Suche Tabelle.
- Suche erste und letzte Spalte.
- Suche erste Zeile.
- Finde erstes Textfeld?
- Finde Tabelle im Textfeld
Und DANN wird das erste Script aktiv und kann die Kennziffer-Spalte finden und ändern.
Liege ich so weit richtig? (Hoffe, du beißt jetzt nicht gerade fluchend in die Tischkannte ;-) )