所以我正在开发谷歌脚本来创建一个简单的问题跟踪器。
在表单提交时,它会在“new
”下创建“column
”问题。我想在午夜将“Status
”列的值更改为“old
”。我被代码困住了。
时间我想在午夜设置时间驱动的触发器。请帮助。
function changeStatus() {
// var sheet = SpreadsheetApp.getActiveSheet();
var row = sheet.getLastRow();
//var lastRow = sheet.getR
// Set the status of the new ticket to 'New'.
// Column F is the Status column
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
//var range = sheet.getRange("F2:F4");
//var row = range.getRow();
for (var i = 0; i >= row; i--) {
sheet.getRange(i, getColIndexByName("Status")).setValue("old");
}
}
答案 0 :(得分:0)
您需要解释问题是什么或者您想要帮助的地方。
如果该功能没有触发,那么可能是因为getActiveSpreadsheet
不适用于时间触发器,因为当它触发你的电子表格时可能不会打开(激活)。请改用openByID
(ID可在URL中找到)。
就代码的其余部分而言,如果您只有两种状态并且效率不是太重要,那么似乎很好。如果您有两种以上的状态,则必须检查状态是否为new
,然后将其更改为old
,并保留其他状态。
此外,您可以考虑存储一个持久值来指示您中断的位置。从逻辑上讲,任何东西都不应该恢复为new
,因此您不需要更改以前行的状态。考虑到这一点,如果你从前一天离开的地方开始,它将使你不必遍历所有行。