我是编码和GAS的新手。在搜索了无数的样本和指南后,我一直在为脚本工作几天,现在我陷入困境!在光标位置插入一段段落到Google Doc中
我正在为我的员工会议创建滚动或运行日程。在文档开始处将是基于文档中使用的标题的目录。然后每个星期,该周的“入口”将被添加。我想要做的是能够运行脚本添加基本条目信息,然后在会议期间添加,以便每次都不必重写文本。
我想要做的:内容
注册1
进入2
进入3
我希望能够运行脚本,以便进入4会去
表这里
条目3
个dfafasdfasdfas
afadafadfafd
注册2个
dfafasdfasdfas
afadafadfafd
注册1个
dfafasdfasdfas
afadafadfafd
我写了使用insertParagraph的脚本。我知道还有“appendParagraph”,但是它总是将文本放在文档的底部。问题是,insertParagraph将新条目放在文档的最顶端 - 位于目录之上。我正在寻找一种方法来将该文本“块”直接插入目录后面。
我试过改变东西,所以它比段落(即文本使用getCursor),但我不能使用标题格式。
注意:我并不试图在脚本中插入目录 - 我可以在Google Doc中执行此操作,并根据标题进行更新,假设我可以保留标题!
谢谢!
function AddText() {
var body = DocumentApp.getActiveDocument().getBody();
var date = Utilities.formatDate(new Date(), "EST", "MM-dd-yyyy");
var header = body.insertParagraph(0,date);
header.setHeading(DocumentApp.ParagraphHeading.HEADING3);
var section = body.insertParagraph(1,"Members Present");
section.setHeading(DocumentApp.ParagraphHeading.HEADING4);
body.insertParagraph(2,"Name 1, Name 2");
var section = body.insertParagraph(3,"Agenda");
section.setHeading(DocumentApp.ParagraphHeading.HEADING4);
var item1 = body.insertListItem(4,'Discuss Topic (See Program: ProgLink)');
var url = 'https://www.google.com';
var doc = DocumentApp.getActiveDocument();
var element = doc.getBody().findText("ProgLink");
if(element){ // if found a match
var start = element.getStartOffset();
var text = element.getElement().asText();
text.replaceText("ProgLink",url);
text.setLinkUrl(start, start+url.length, url);
Logger.log(item1.getListId());
var item2 = body.insertListItem(5,'Trends to Discuss');
item2.setListId(item1);
var item3 = body.insertListItem(6,'Training');
item3.setListId(item1);
var item4 = body.insertListItem(7,'Other Items');
item4.setListId(item1);
}
}
您可以使用insertParagraph(childIndex,paragraph)。子索引开始,然后0进入文档的结尾。你可能会猜想它会变成1或2,或者如果你喜欢,你可以使用我一直在处理的脚本。这不完整。这仍然是一项正在进行的工作,但如果应该帮助您可以帮助您找到孩子身体的位置。 – Cooper