我有一张Google电子表格,其中包含一张名为Wrapped Sheet
的表单,用于从Google表单收集的回复。在每个新添加的响应(因此onEdit函数)上,我想在所有单元格上调用Wrap Text
选项。我打开了脚本编辑器并使用以下代码创建了onEdit.gs
:
function onEdit(){
var activeSheet = SpreadsheetApp.getActiveSpreadsheet();
if(activeSheet.getName() == "Wrapped Sheet") {
var dataRange = activeSheet.getRange(1,1,data.length,headers.length);
dataRange.setWrap(true);
}
}
但是,新响应不会触发该功能。此外,从脚本编辑器中手动调用它不会报告任何错误。
答案 0 :(得分:2)
你应该去google script event docs完整阅读。
您会发现您的用例存在特定事件:表单提交。在修改工作表时(函数onEdit(e)),您应该在提交表单时执行代码,而不是执行代码。
在相同的文档中,您可以找到exemple of how to use this trigger。
注意:请注意,有两种类型的事件触发器:简单触发器和已安装触发器。 onFormSubit事件响应已安装的触发器(同样,您将在docs中找到所有内容。)
答案 1 :(得分:0)
如果每个S.O.答案是阅读文档S.O的链接。毫无意义。
所以,正如奥尔斯基罗所说的... 正如本S.O中所述回答... https://webapps.stackexchange.com/questions/88543/how-to-automatically-wrap-text-to-new-responses-from-a-form-in-a-google-spreadsh
实际答案是:
function wrap(e) {
e.range.setWrap(true);
}