gpt4 book ai didi

google-apps-script - DocumentApp 表 : How do I merge cells in a column? [w/workaround]

转载 作者:行者123 更新时间:2023-12-04 13:48:09 25 4
gpt4 key购买 nike

我正在尝试使用 GAS 构建一个文档,该文档将包含一个表,其中第一列中有一个单元格,第二列中有多个单元格。 See an example here.

我了解表格的结构为表格 > 行 > 单元格,并且 merge() 方法仅合并同级单元格,即同一行中的单元格。

有没有办法在两个同级行中合并文档表格单元格,或者实现类似的效果?

最佳答案

解决方法

您可以从已在 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 元素中编码的。表格仅在复制表格元素时保持其格式。

将行一起复制可以保持列合并,但如果您之前设置了一个值,则会丢失 setWidth 值。似乎在复制行或单元格时丢失了一些格式。在合并中向表中添加一个额外的行会破坏合并。

我发现你可以编辑Table的内容,比如Cell.setWidth(),当然你也可以编辑文本。您只是不能使用此方法添加行和单元格,并保持列合并。

关于google-apps-script - DocumentApp 表 : How do I merge cells in a column? [w/workaround],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31712291/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com