// applyTableStyles.jsx
//DESCRIPTION: Weist allen Tabellen eines Dokuments ein ausgewähltes Tabellenformat zu und übernimmt aus dem Tabellenformat die Formate für die Körperzellen.
// Martin Fischer
// 10/2008; erweitert 11/2009
var d = app.activeDocument;
var myTableStyle = myDisplayDialog ();
// ——————————————————–
// Tabellenformat zuweisen
// ——————————————————–
d.stories.everyItem().tables.everyItem().appliedTableStyle = myTableStyle;
// Abweichungen vom Tabellenformat löschen
d.stories.everyItem().tables.everyItem().clearTableStyleOverrides( true );
// ——————————————————–
// Zellenformate aus Tabellenformat zuweisen
// ——————————————————–
// 1. Tabellenkörperzeilen
d.stories.everyItem().tables.everyItem().cells.everyItem().appliedCellStyle = myTableStyle.bodyRegionCellStyle;
// 2. Linke Spalte
d.stories.everyItem().tables.everyItem().columns[0].cells.everyItem().appliedCellStyle = myTableStyle.leftColumnRegionCellStyle;
// 3. Rechte Spalte
d.stories.everyItem().tables.everyItem().columns[-1].cells.everyItem().appliedCellStyle = myTableStyle.rightColumnRegionCellStyle;
// 4. Header
d.stories.everyItem().tables.everyItem().headerRowCount[-1].cells.everyItem().appliedCellStyle = myTableStyle.headerRegionCellStyle;
// 5. Kopf- und Fußzeilen
for ( var s = 0; s < d.stories.count(); s++ )
{
for ( var t = 0; t < d.stories.item(s).tables.count(); t++ )
{
if (d.stories.item(s).tables.item(t).headerRowCount > 0)
d.stories.item(s).tables.item(t).rows.itemByRange(0, d.stories.item(s).tables.item(t).headerRowCount-1).cells.everyItem().appliedCellStyle = myTableStyle.headerRegionCellStyle;
if (d.stories.item(s).tables.item(t).footerRowCount > 0)
d.stories.item(s).tables.item(t).rows.itemByRange(0, d.stories.item(s).tables.item(t).footerRowCount-1).cells.everyItem().appliedCellStyle = myTableStyle.footerRegionCellStyle;
}
}
// Abweichungen vom Zellenformat löschen
d.stories.everyItem().tables.everyItem().cells.everyItem().clearCellStyleOverrides( true );
// Dialog zum Erfassen des Tabellenstils
function myDisplayDialog(){
var myDialog = app.dialogs.add({name:”Auswahl Tabellenstil”});
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;
}