小编Man*_*val的帖子

如何使用 JXA 在 Numbers (iWork) 中创建范围

我正在使用 JXA 使用 Numbers 应用程序实现流程自动化。我需要的是选择一系列单元格来应用宽度,但 JXA 不允许我获取它们。

根据苹果文档,我只需要使用 make 或将创建的对象推送到数组内,但任何一个都可以。这是我的代码和 Automator 错误:

选项1:

var Numbers = Application('Numbers');
Numbers.Range({name: 'A2:A20'}).make();

// -> Error: Can't make or move that element into that container
Run Code Online (Sandbox Code Playgroud)

选项2:

var Numbers = Application('Numbers');
var myRange = Numbers.Range({name: 'A2:A20'});
Numbers.documents[0].sheets[0].tables[0].ranges.push(myRange);

// -> Error: Can't create object. 
Run Code Online (Sandbox Code Playgroud)

选项 3:

var Numbers = Application('Numbers');
var myRange = Numbers.Range({name: 'A2:A20'});
Numbers.documents[0].sheets[0].tables[0].selectionRange = myRange;

// -> Automator close with an unexpected error
Run Code Online (Sandbox Code Playgroud)

根据 AppleScript 文档(语法与 Javascript 非常不同),我可以分配代表范围的文本:

set selection range …
Run Code Online (Sandbox Code Playgroud)

macos iwork apple-numbers javascript-automation

3
推荐指数
1
解决办法
1912
查看次数