【发布时间】:2022-07-26 21:55:55
【问题描述】:
我创建了一个小工具,允许我们使用 G 表作为 G doc 模板的源。本质上,它从 G 表中获取值并将模板中的占位符替换为相应的值。
我在这里声明变量:
var MB_1 = ws.getRange("C1").getValue();
在这里,我将文档的正文替换为相应的值:
var docBody = DocumentApp.openById(createdFileId).getBody();
docBody
.replaceText("{mbd_1}", MB_1)
问题是我有 300 个变量,我想避免这样的事情:
var docBody = DocumentApp.openById(createdFileId).getBody();
docBody
.replaceText("{mbd_1}", MB_1)
.replaceText("{mbd_2}", MB_2)
.replaceText("{mbd_3}", MB_3)
.replaceText("{mbd_4}", MB_4)
.replaceText("{mbd_5}", MB_5)
.replaceText("{mbd_6}", MB_6)
.replaceText("{mbd_7}", MB_7)
.replaceText("{mbd_8}", MB_8)
.replaceText("{mbd_9}", MB_9)
.replaceText("{mbd_10}", MB_10)
所以,长话短说:如何循环替换文本部分以获取 300 个变量?我已经看到了“这个”的解决方案。但我不知道如何在这种情况下使用它。
非常感谢您的支持。
【问题讨论】:
-
他们在同一列吗?展示如何声明其他 MB 变量。
-
您可能想看看这个公认的答案:stackoverflow.com/a/14991272/1101930。遍历数组时,您可以限制每列每个单元格的代码