首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在中填充文本范围的最佳实践

在中填充文本范围的最佳实践
EN

Stack Overflow用户
提问于 2022-02-07 18:25:31
回答 1查看 232关注 0票数 -2

我使用一个模板在谷歌文档中的一个字母,我想填充字母后(动态)标题的信件自动通过App。是否有最佳做法将文本始终设置为相同的位置?我试着用占位符替换它。但有时我需要更换文本不止一次。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-08 02:34:32

在您的情况下,使用NamedRange?参考如何?

当使用NamedRange时,脚本如下所示。

示例脚本:

代码语言:javascript
复制
// Create custom menu.
function onOpen() {
  DocumentApp.getUi().createMenu("sample")
    .addItem("1. Install named range", "setNamedRange")
    .addItem("2. Change text by named range", "changeTextByNamedRange")
    .addItem("Delete named range", "deleteNamedRange")
    .addToUi();
}

const nameOfNamedRange = "sample1"; // Please set the name of your named range.

// Set named range.
function setNamedRange() {
  const doc = DocumentApp.getActiveDocument();
  const ele = doc.getCursor().getElement();
  const range = doc.newRange().addElement(ele).build();
  doc.addNamedRange(nameOfNamedRange, range);
}

// Update named range.
function changeTextByNamedRange() {
  const updateText = "updated sample"; // Please set the updated text you want.

  const doc = DocumentApp.getActiveDocument();
  const range = doc.getNamedRanges().find(r => r.getName() == nameOfNamedRange);
  if (!range) {
    throw new Error("No named range. Please install a named range.");
  }
  range.getRange().getRangeElements().forEach(e => e.getElement().asText().setText(updateText));
}

// Delete named range.
function deleteNamedRange() {
  const doc = DocumentApp.getActiveDocument();
  const range = doc.getNamedRanges().find(r => r.getName() == nameOfNamedRange);
  if (!range) return;
  range.remove();
}

用法:

  1. 请将光标设置为要设置命名范围的文档。
  2. 运行setNamedRange。这样,当前游标的点被设置为命名范围。
  3. 当您想更改命名范围的文本时。请运行changeTextByNamedRange。这样,更新后的文本就会被放置到指定的范围中作为替换。
    • 在这种情况下,即使段落被更改,命名范围前后的文本也被更改,也可以使用命名范围。

当您要删除命名范围时,请运行deleteNamedRange

测试:

当运行上述脚本时,将获得以下结果。

参考资料:

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71023570

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档