google-apps-script - 使用脚本格式化特定列中的单词
问题描述
我想在表单请求后将工作表中的两个单词格式化为粗体。听起来很容易,但我还没有找到解决方案。也许有人可以帮忙。
描述:
我使用 onformsubmit 函数将表单中的一些数据复制到概览表中。
var overview_sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Overview");
var values = overview_sheet.getDataRange().getValues()[0];
var row = overview_sheet.getLastRow() + 1;
var cI = values.indexOf("I") + 1
var cRequesterInfo = values.indexOf("Request Information") + 1;
var text = "Windows Login:\nLine Manager:\nDepartment:\nAccess Rights:";
var requesterInformation =
e.namedValues["Windows Login Name"] + "\n" +
getName(e.namedValues["Line Manager E-Mail Address"]) + "\n" +
e.namedValues["Org Code"] + "\n" +
e.namedValues["Access Rights"] + "\n" +
("") + "\n" +
("Reason:")
+ "\n" +
e.namedValues["Reason for Access"] + "\n" +
("") + "\n" +
("Projects:")
+ "\n" +
e.namedValues["Access to Project/s"];
overview_sheet.getRange(row, cI).setValue(text);
overview_sheet.getRange(row, cRequesterInfo).setValue(requesterInformation);
效果很好,它在工作表中看起来像
现在我尝试格式化单词“Reason”和单词“Projects”,我想将其格式化为粗体,如果可能的话,让它比其他单词大一点。
预先感谢您的帮助
问候乔纳斯
解决方案
你的目标:
- 获取单元格的文本内容并格式化其中的一些单词以使其变为粗体。
您想要在单元格中生成的字符串实际上是 a RichTextValue
,因此您的目标可以重新定义为:
- 如何构建和设置 Range 的 RichTextValue?
一些背景:
什么是RichTextValue
? 从文档中,我们有以下内容:
“用于表示单元格文本的风格化文本字符串。文本的子字符串可以具有不同的文本样式。”
脚步:
- 建立
RichTextValue
与RichTextValueBuilder
- 通过将TextStyles设置为子字符串来格式化 RichTextValue 。
- 将其设置为所需的范围
参考:
推荐阅读
- apache-nifi - 如何在 nipyapi 中编写控制器服务?
- c++ - cuSOLVER - cusolverSpScsrlsvqr 的设备版本比主机版本慢得多
- javascript - 数据不显示 ajax 和 javascript ci
- amazon-web-services - AWS:并发队列系统?
- python - 有没有办法知道 setup.py 中的 pip 正在安装哪些软件包?
- python - VSCode中jupyter笔记本中的交互式python 3d绘图
- jpa - 如何编写条件查询生成器以从列表中选择全部?
- elasticsearch - 根据不同文档中相同字段的不同值进行过滤
- javascript - 计算 React 中的总价格
- javascript - 如何从一组遵循带有祖先数组(mongoDB)的树结构的数据构建目录(在 HTML5 / Vue 中)?