gpt4 book ai didi

google-apps-script - 如何使用谷歌应用程序脚本在谷歌文档中的特定文本后附加表格?

转载 作者:行者123 更新时间:2023-12-04 18:20:55 25 4
gpt4 key购买 nike

我想在特定文本之后将表格附加到谷歌文档。这是我的尝试。

 var body = somedoc.getBody();   
var range = body.findText("#PLACEHOLDER#");
body.appendTable(data);

这里的数据是一些多维数组。这工作正常。但是 table 被附加到 body 的末尾。我想在“#PLACEHOLDER#”之后附加表格。
 var body = somedoc.getBody();   
var range = body.findText("#PLACEHOLDER#");
range.appendTable(data);

这不起作用。如何获取范围的位置(文本:#PLACEHOLDER#)并在其后附加表格?

最佳答案

  • 您想在 #PLACEHOLDER# 的文本后插入一个表格在 Google 文档中。
  • 从你的问题来看,我认为 #PLACEHOLDER#放在一个段落中,该段落只包含 #PLACEHOLDER# 的文本.
  • 您想使用 Google Apps 脚本来实现这一点。

  • 如果我的理解是正确的,这个示例脚本怎么样?

    模式一:

    #PLACEHOLDER#只有一个文本时在谷歌文档中,下面的修改如何?

    修改后的脚本:
    var body = somedoc.getBody();
    var range = body.findText("#PLACEHOLDER#");

    // I added below script.
    var ele = range.getElement();
    if (ele.getParent().getParent().getType() === DocumentApp.ElementType.BODY_SECTION) {
    var offset = body.getChildIndex(ele.getParent());
    body.insertTable(offset + 1, data);
    }

    模式2:

    #PLACEHOLDER#有多个文本时在谷歌文档中,下面的修改如何?

    修改后的脚本:
    var body = somedoc.getBody();
    var range = body.findText("#PLACEHOLDER#");

    // I added below script.
    while (range) {
    var ele = range.getElement();
    if (ele.getParent().getParent().getType() === DocumentApp.ElementType.BODY_SECTION) {
    var offset = body.getChildIndex(ele.getParent());
    body.insertTable(offset + 1, data);
    }
    range = body.findText("#PLACEHOLDER#", range);
    }

    笔记:
  • 这些修改后的脚本假设 datatable或二维数组。

  • 引用:
  • getChildIndex()
  • insertTable()

  • 如果我误解了您的问题并且这不是您想要的结果,我深表歉意。那个时候能不能提供一个你要使用的示例文档?通过这个,我想确认这个问题。

    关于google-apps-script - 如何使用谷歌应用程序脚本在谷歌文档中的特定文本后附加表格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57641087/

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