Скрипт duplicateOneTableRow.jsx
Если много работаете с табличными данными, то возможно вам пригодится скрипт duplicateOneTableRow.jsx , который делает копию строки таблицы, вставляя её ниже текущей. Для вызова скрипта рекомендуется создать клавиатурное сокращение. Перед запуском скрипта поставьте текстовый курсор в любую ячейку табличной строки, которую нужно сдублировать.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | // duplicateOneTableRow.jsx //DESCRIPTION: Verdoppelt eine ausgewahlte Tabellenzelle if (app.selection.length == 0) { alert('Выделите строку таблицы'); exit(); } if (app.selection[0].constructor.name == 'Cell') var myRow = app.selection[0].parentRow; else if (app.selection[0].parent.constructor.name == 'Cell') var myRow = app.selection[0].parent.parentRow; else var myRow = null; if (myRow != null) { var myNewRow = myRow.parent.rows.add(LocationOptions.AFTER, myRow); for (var i = 0; i < myRow.cells.length; i++) myNewRow.cells.item(i).properties = myRow.cells.item(i).properties; } |
Скрипт предназначен для работы в InDesign CS3, CS4, Windows, MAC
Автор скрипта — Martin Fischer
UP: Если надо, чтобы сдублированная строка вставала в конец таблицы, замените эту строку:
var myNewRow = myRow.parent.rows.add(LocationOptions.AFTER, myRow);
на строку:
NewRow = myRow.parent.rows.add(LocationOptions.AFTER, myRow.parent.rows.lastItem());
У меня не работает.
Выдает ошибку. =(( Может, что не так делаю?
Поменяйте одинарные кавычки на двойные.
Спасибо, заработало! =))
Шаман…
Вот только в CS4 ругается на строку в конце скрапта
myNewRow.cells.item(i).properties = myRow.cells.item(i).properties;
но строку в таблице все же создает…
* скрипта…
Кроме двойных кавычек, ошибка в 15ё строке на последней точке-с-запятой (…cells.length; i++))