应用程式指令码-自11日起无法移除表格

时间:2019-11-25 05:53:59

标签: google-apps-script google-sheets google-docs

我已经完成了一个Google文档模板,正在根据Google表格中的插入值进行修改。

我遇到了这类问题,一旦定义了google doc文档,我就必须删除一些表,并且这样做:

Var Table1 = body.getTables()[1];
Var Table2 = body.getTables()[2];
....
Var Table15 = body.getTables()[15];

Table1.RemoveFromParent();
Table2.RemoveFromParent();
...
Table15.RemoveFromParent();

直到第10张表的所有作品,第11张出现错误框

  

“ TypeError:不可能调用未定义的方法” removeFromParent“

。应用脚本似乎无法识别从11号到下一个的Table。

但是最奇怪的是,我试图更改文档中表格的位置,有时脚本可以识别11到15之间的表格,而其他人则无法识别。

有什么想法吗?

谢谢

1 个答案:

答案 0 :(得分:0)

假设我们有一个包含5个表格的文档:

Logger.log(body.getTables().length) // Outputs: 5.0
var table0 = body.getTables()[0];
var table1 = body.getTables()[1];
var table2 = body.getTables()[2];
var table3 = body.getTables()[3];
var table4 = body.getTables()[4];

一旦您这样做:

table2.removeFromParent();

现在 table4所引用的内容不再存在:

var table4 = body.getTables()[4];

undefined,因为只剩下4个表:

Logger.log(body.getTables().length) // Outputs: 4.0
var table0 = body.getTables()[0]; //same
var table1 = body.getTables()[1]; //same
var table2 = body.getTables()[2]; //this is now table 3
var table3 = body.getTables()[3]; //this is now table 4
var table4 = body.getTables()[4]; //undefined, does not exist.

现在只有4个表:0、1、2和3。