Tabelle ansprechen durch Grep-Suche des ersten Eintrages in einer Tabelle
Hallo zusammen,
ich bin Neuling hierbei und habe folgende Aufgabenstellung:
Meine InDesign Datei enthält viele Tabellen, die unterschiedlich ausgezeichnet werden müssen in vielen Ebenen mit unterschiedlichen Sprachen. Jetzt suche ich eine spezielle Tabellen-Sorte, die ich durch Grep-Suche nach dem ersten Wort in der ersten Zeile identifizieren kann.
Als Basis dient mir das Script von Martin Fischer applyTableStyles.jsx, das grundsätzlich großartig ist.
Mein Ansatz ist folgender:
app.findTextPreferences = NothingEnum.NOTHING;
app.changeTextPreferences = NothingEnum.NOTHING;
app.findGrepPreferences = NothingEnum.NOTHING;
app.changeGrepPreferences = NothingEnum.NOTHING;
app.findGlyphPreferences = NothingEnum.NOTHING;
app.changeGlyphPreferences = NothingEnum.NOTHING;
app.findObjectPreferences = NothingEnum.NOTHING;
app.changeObjectPreferences = NothingEnum.NOTHING;
app.findGrepPreferences.findWhat = "^(Betriebsdaten)$"; //hier definiere ich meinen Suchbegriff, der funktioniert
var _text = app.activeDocument.findGrep(); //und packe ihn in diese Variable.
Jetzt suche ich die Anbindung an das Script von Martin Fischer, der so beginnt:
var d = app.activeDocument;
var myTableStyle = myDisplayDialog ("tauschformat");
/ Dialog zum Erfassen des Tabellenstils
function myDisplayDialog(){
var myDialog = app.dialogs.add({name:"Bitte Format wählen"});
with(myDialog.dialogColumns.add()){
var myTsDropDown = dropdowns.add({stringList: d.tableStyles.everyItem().name, selectedIndex:d.tableStyles.length-1});
}
var myResult = myDialog.show();
if(myResult == true){
var tS = d.tableStyles[myTsDropDown.selectedIndex];
myDialog.destroy();
}
else{
myDialog.destroy();
exit()
}
return tS;
}
Da Document zwar tableStyles supportet, verhakt er sich aber, wenn ich versuche ihn mit meiner Grep-Suche zu verbinden und gibt mir dann "undefined object" aus.
Was muss ich schreiben, damit sich var d auch auf mein Grep-Ergebnis bezieht??
Über Hinweise wäre ich echt dankbar