我尝试使用GAS构建一个文档,该文档将包含一个表,第一列中有一个单元格,第二列中有多个单元格。 See an example here.
我知道表的结构如表>行>单元格和merge()方法仅合并作为兄弟节点的单元格,即同一行中的单元格。
有没有办法在两个兄弟行中合并文档表格单元格,或者实现类似效果的东西?
答案 0 :(得分:2)
您可以从Google文档应用中格式化的现有Google文档中复制表格。这将使用以下代码保留合并列和所有格式:
function copyTable() {
var sourceDoc = DocumentApp.openById('id').getBody();
//This is the orginal table containing merged cells:
var sourceTable = sourceDoc.getTables()[0];
var targetDoc = DocumentApp.openById('id').getBody().clear();
var copiedTable = targetDoc.appendTable(sourceTable.copy());
}
合并列格式似乎在Table元素中编码,而不是在Row或Cell元素中编码。 Table仅在复制Table元素时保持其格式。
将行复制在一起会保持列合并,但如果先前设置了一个,则会丢失setWidth值。复制行或单元格时似乎会丢失一些格式。在合并内向表中添加额外的行会破坏合并。
我发现你可以编辑Table的内容,比如Cell.setWidth(),当然你可以编辑文本。您无法使用此方法添加行和单元格,并保持列合并。