[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt Verknüpfte Excel-Tabellen finden

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

Verknüpfte Excel-Tabellen finden

WeTobi
Beiträge gesamt: 4

22. Aug 2017, 14:36
Beitrag # 1 von 8
Bewertung:
(2455 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

ich habe in Indesign CS5 ein Dokument u. a. mit vielen verknüften Excel2016.xlsx-Tabellen und auch weiteren "normalen" Tabellen.

Nun möchte ich nur den verknüpften Excel-Tabellen ein Tabellenformat per Script zuweisen. Tabellen suchen und Format zuweisen an sich ist kein Problem, aber ich schaffe das bisher immer nur für alle Tabellen.

Wie kann ich von der Tabelle ausgehend die Verknüpfung abfragen?
Oder ggf. ausgehend vom Link das Tabellenformat setzen?

Viele Grüße

Tobias
X

Verknüpfte Excel-Tabellen finden

Kai Rübsamen
Beiträge gesamt: 4585

22. Aug 2017, 14:54
Beitrag # 2 von 8
Beitrag ID: #559166
Bewertung:
(2450 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Tobias,

hab es nicht getestet, sollte aber so funktionieren: du könntest eine Schleife durch alle Tabellen machen und prüfen, ob für die gerade untersuchte Tabelle "unlink" zur Verfügung steht. Falls ja, ist die Tabelle verknüpft.

Gruß Kai Rübsamen


als Antwort auf: [#559165]

Verknüpfte Excel-Tabellen finden

WeTobi
Beiträge gesamt: 4

5. Sep 2017, 18:31
Beitrag # 3 von 8
Beitrag ID: #559338
Bewertung:
(2311 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Kai,

leider bin ich auch nach einiger Herumprobiererei nicht weitergekommen.

Code
var _dok = app.activeDocument; 

TabellenSuchen("MeinTabellenformat");

function TabellenSuchen(_tstyle) {
// Schleife durch Textabschnitte
for (s = 0; s < _dok.stories.count(); s++) {
// Schleife durch Tabellen
for (var t = 0; t < _dok.stories.item(s).tables.count(); t++) {
var _table = _dok.stories.item(s).tables.item(t)
// Format zuweisen
alert(_table.hasOwnProperty("unlink"))
if (_table.hasOwnProperty("unlink")) {
_table.appliedTableStyle = _tstyle;
alert("Funktioniert!")
}
}
}
}


Ich erhalte immer false als Ergebnis. Noch eine Idee?

Viele Grüße

Tobias


als Antwort auf: [#559166]

Verknüpfte Excel-Tabellen finden

Martin Fischer
  
Beiträge gesamt: 11930

6. Sep 2017, 13:20
Beitrag # 4 von 8
Beitrag ID: #559347
Bewertung:
(2269 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Tobias,

ich vermute, Du suchst den Link an der falschen Stelle.
Beim Platzieren einer Tabelle wird nicht die Tabelle verlinkt (eine Tabelle hat keinen itemLink), sondern der Textabschnitt (story), in dem die Tabelle - möglicherweise alleine ohne umgebenden Text - steckt.

Dieser Textabschnitt hat - sofern verknüpft - einen itemLink.
Und auf diesen itemLink - nicht den Textabschnitt selbst und nicht die Tabelle - kannst Du den Befehl unlink() anwenden.

Mögliche Parents eines Links sind
- Graphic
- Movie
- Sound
- Story

Nicht aber
- Table

Du könntest nun so vorgehen und in einer Schleife durch die Stories prüfen,
a) ob die jeweilige Story eine Verknüpfung (itemLink) hat und
b) wenn ja, ob sie genau eine Tabelle (und eventuell nur diese) enthält.

Oder Du prüfst die Links in einer Schleife, ob der jeweilige Link zu einer Story mit genau einer Tabelle (und nix anderem, also Story.characters.length == 1) führt.

Viele Grüße
Martin


als Antwort auf: [#559338]
(Dieser Beitrag wurde von Martin Fischer am 6. Sep 2017, 13:22 geändert)

Verknüpfte Excel-Tabellen finden

WeTobi
Beiträge gesamt: 4

6. Sep 2017, 20:13
Beitrag # 5 von 8
Beitrag ID: #559360
Bewertung:
(2236 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

ich hatte zwar inzwischen grundsätzlich verstanden, dass Tabellen da "anders" sind, konnte es aber nicht so richtig umsetzen.

Zwischenzeitlich hatte ich mir eine Lösung gebastelt, die zuerst ein Array mit allen Story-IDs mit Excel-Links aufbaut. Im Anschluss wurde dann in meiner Schleife geprüft, ob die Story-ID im Tabellenkontext in dieser Liste vorkommt. Umständlich, hat aber soweit funktioniert.

Mit Deinem Denkanstoß geht es jetzt doch etwas einfacher:

Code
var _dok = app.activeDocument; 

TabellenSuchen("MeinTabellenformat");

// Tabellenformat setzen
function TabellenSuchen(_tstyle) {
// Schleife durch Textabschnitte (stories)
for (s = 0; s < _dok.stories.count(); s++) {
// Schleife durch Tabellen (tables)
for (var t = 0; t < _dok.stories.item(s).tables.count(); t++) {
var _Tabelle = _dok.stories.item(s).tables.item(t)
// Format zuweisen, wenn ein Link im Textabschnitt (story) vorhanden ist
if (_Tabelle.parent.parentStory.itemLink != null) {
_Tabelle.appliedTableStyle = _tstyle;
}
}
}
}


Ich bin mir bewusst, dass es hier noch bei mehreren Tabellen im Textabschnitt Probleme geben könnte, sofern nur manche verlinkt sind. Aber das ist in meinem Anwendungsfall kein Problem.

Vielen Dank Euch beiden.

Viele Grüße

Tobias


als Antwort auf: [#559347]

Verknüpfte Excel-Tabellen finden

Kai Rübsamen
Beiträge gesamt: 4585

7. Sep 2017, 12:32
Beitrag # 6 von 8
Beitrag ID: #559365
Bewertung:
(2194 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Tobias,

komme heute erst aus dem Urlaub, daher eine verspätete Rückmeldung. Wie Martin bereits geschrieben hat, funktioniert mein direkter Ansatz nicht.

Es scheint für mehrere Tabellen (mal verknüpft, mal nicht) in einem Textabschnitt auch keine Lösung zu geben, da das hier ebenfalls nicht geht:

Code
// das aktive Dokument 
var curDoc = app.activeDocument;

// alle Links im Dokument
var allLinks = curDoc.links;

for (var i = allLinks.length-1; i >= 0; i--) {
var curLink = allLinks[i];
// den Typ der Verlinkung prüfen
if (curLink.linkType.match(/Excel/)) {
curLink.unlink();
}
}


Der parent von curLink ist ebenfalls story. Wenn ich jetzt die Tabellen (vor dem unlink()) untersuche, habe ich nichts gewonnen.

Gruß Kai Rübsamen


als Antwort auf: [#559360]

Verknüpfte Excel-Tabellen finden

Uwe Laubender
Beiträge gesamt: 4242

7. Sep 2017, 17:03
Beitrag # 7 von 8
Beitrag ID: #559367
Bewertung:
(2173 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Tobias,
hm…

Mehrere verlinkte Tabellen in einem Textabschnitt ??!

Ich glaube, das ist nicht möglich… Jedenfalls nicht mit unterschiedlich verlinkten Dateien. Und falls ja, eine sehr, sehr schlechte Strategie, um Inhalte auf dem neuesten Stand zu halten.

Falls Du nämlich eine einzige verlinkte Tabelle in einem Textabschnitt hast, die auf den neuesten Stand gebracht werden soll, ersetzt Du beim Update des Links alle im Textabschnitt befindlichen Inhalte mit der aktuellen Version der einzelnen, verlinkten Tabelle.
*****
Mit herzlichem Gruß,
Uwe Laubender


als Antwort auf: [#559360]

Verknüpfte Excel-Tabellen finden

WeTobi
Beiträge gesamt: 4

7. Sep 2017, 17:35
Beitrag # 8 von 8
Beitrag ID: #559368
Bewertung:
(2165 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Uwe,

mehrere Tabellen pro Textabschnitt sind ja zweifelsohne möglich, aber anscheinend tatsächlich nicht mehrere verlinkte.

Aber ich halte mich eh daran - ausschließlich eine verlinkte Tabelle pro Textabschnitt. Ich wollte nur auf möglichen Grenzen meines Skriptes hinweisen.

Viele Grüße

Tobias


als Antwort auf: [#559367]
(Dieser Beitrag wurde von WeTobi am 7. Sep 2017, 17:36 geändert)
X

Farbmanagement

Farbmanagement
din_300

Veranstaltungen

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen. pdf-icon Hier eine kleine Anleitung.

Veranstaltungen
13.12.2018 - 20.12.2018

3400 Burgdorf, BE
Donnerstag, 13. Dez. 2018, 09.00 Uhr - Donnerstag, 20. Dez. 2018, 09.00 Uhr

Workshop

Schritt für Schritt: Planen, konzipieren und Umsetzen einer responsiven Website mit Wordpress: Lokalen Server einrichten; Frontend/Backend; Vorgehen Schritt für Schritt bis zur fertigen Site.

2-Tages-Workshop CHF 990.00

Ja

Organisator: PubliCollege GmbH

Kontaktinformation: Beat Kipfer, E-Mailinfo AT publicollege DOT ch

www.publicollege.ch

Websites erstellen mit Wordpress und Elementor Pro
Veranstaltungen
19.12.2018

Wie installiert und konfiguriert man Mailchimp und verwendet es für sein Business

Internet
Mittwoch, 19. Dez. 2018, 10.00 - 11.30 Uhr

Webinar

In diesem Webinar zeige ich den Teilnehmern, wie sie mit Mailchimp eigene Newsletter verschicken können. Wie sie Mailchimp installieren und konfigurieren müssen und wie sie eine erste Kampagne machen können.

Gratis

Ja

Organisator: Eric Mächler

https://events.genndi.com/register/818182175026318367/4ac0f277c0

Der Start ins E-Mail Marketing mit Mailchimp
Hier Klicken