如何使用Office-js合并Word表的单元格

时间:2018-08-06 19:36:53

标签: javascript ms-word ms-office office-js

我正在为工作创建一个加载项,在该加载项中,我必须重新格式化文本以完全适合我们设计师的格式。

我的问题是他们使用的表具有不规则数量的单元格。而且,即使Word中的普通用户也可以,office-js似乎无法创建它们。

Weird table

作为一个例子,实际上这只是一个3行的表。

第一行有2个单元格,第一行是蓝色。第二个将所有边框更改为白色。第二行只有一个单元格。第三个也只有一个单元格,内部有另一个表。

我知道如何做所有其他事情(更改边框颜色,嵌入其他表格等)。我不知道如何以编程方式合并单元格。

Office-js'table documentation没有用于此目的的方法。仔细研究一下,我发现Excel的Office-js部分实际上可以通过其range object's merge method来做到这一点,但是Word显然具有no such method

因此,没有办法以编程方式与Office-js合并表单元格吗?

1 个答案:

答案 0 :(得分:0)

使用insertHtmlinsertOoxml方法创建表时可以完成此操作。

使用HTML,例如:

let rng = context.document.body;
let tableHTML = "<table><tr><td/><td/></tr><tr><td rowspan='2' /><td/></tr><tr><td/></tr></table>";
rng.insertHtml(tableHTML, 'End');

但是,请注意,这将不会在Word Online中正确执行,Word Online还不支持合并或拆分单元格。它可以正确地显示这样的表,但是不能创建/修改它们。