编写此脚本是为了在公司项目日志中使用,以帮助跟踪旧作业的历史记录。
所有“if”和“else if”语句都按照预期的方式工作,除了一个小小的瑕疵我似乎无法指出,我希望有些人可以看到我明显忽略的内容。
我的snafu示例:
假设我在// The Lat/Lng
var lat = the_position.lat;
var lng = the_position.lng;
并且我在第(4)栏中更改了一个名称,它将触发我的“sheetName("Parking lot")
”语句,这就是问题所在:它应该只触发“{{1 “与if
相关联。当我在if else
时,我只希望触发该声明。
我也尝试在我的陈述中使用sheetName
,这似乎没有什么区别。
sheetName("Waiting to be assigned")
答案 0 :(得分:2)
您可能尝试过这样的事情:
function onEdit(e) {
if (SpreadsheetApp.getActiveSheet().getName() == "Waiting to be assigned") {
// Wall of text
}
}
这里的问题是你得到了电子表格的名称,而不是工作表。
稍微优雅的解决方案是使用e
参数
e
是一个事件对象,其中包含有关激活触发器的事件的各种信息
所以你的功能看起来像这样:
function onEdit(e) {
if (e.range.getSheet().getName() == "Waiting to be assigned") {
// Wall of text
}
}
显然,在范围内你还可以检查它是否真的是第4列。
答案 1 :(得分:0)
我同意@ robin-gertenbach,另外你也会这样做。
玩得开心!