Applescript + InDesign选择表格中的正文行

时间:2016-02-03 18:03:09

标签: excel automation applescript adobe-indesign

我目前正在尝试自动化一些数据格式化。源数据在Excel中格式化。 inDesign模板已经格式化。我可以右键单击表格并选择正文行然后粘贴数据,它看起来很漂亮。我希望删除此步骤,但我无法弄清楚如何获取Applecript来选择inDesign模板的表格和正文行。 以下两种情况似乎都不起作用。

set selection to body rows of table 1 of active document 
select body rows of table 1 of active document

对此的任何帮助都会很棒。

3 个答案:

答案 0 :(得分:0)

我认为您需要以不同方式引用您的表格。试试这个:

 set allTables to every table of every story of active document

 set myTable to item 1 of allTables

然后你应该能够选择行:

tell table myTable

select first row

end tell

答案 1 :(得分:0)

不幸的是,select命令仅适用于单个行,而不适用于所选表中的所有行。

基本上,你必须排队并决定row type。一旦确定该行为body row,您就可以选择它。

将选定行添加到另一个选定行的语法非常棘手,尤其是没有示例。请参阅下面的完整脚本。

    tell application "Adobe InDesign CC 2015"

    set allBodyRows to every row of every table of every story of active document whose row type is body row

    set bodyRow to {}
    repeat with i from 1 to (count allBodyRows)
        set bodyRow to item i of allBodyRows
        if i = 1 then
            select bodyRow
        else
            select bodyRow existing selection add to
        end if
    end repeat

    end tell

答案 2 :(得分:-1)

--author by RyuAutodidacte
tell application "Adobe InDesign 2020"
tell active document
    --When the selection is a text frame
    set FirstBodyCell to index of first cell of table 1 of selection whose row type is body row
    set LastBodyCell to index of last cell of table 1 of selection whose row type is body row
    select cells FirstBodyCell thru LastBodyCell of table 1 of selection
end tell
end tell