仅在编辑特定工作表时触发功能

时间:2014-09-02 04:35:43

标签: google-apps-script google-sheets

我有一张谷歌表,我想在每次更新单元格时添加时间戳。我有基本的代码:

function onEdit() { 
    var s = SpreadsheetApp.getActiveSheet(); 
    var c = s.getActiveCell();  
    var cell1 = 13 
    if(c.getColumn() != cell1 ) { 
        var row = c.getRow();  
        var time = new Date(); 
        time = Utilities.formatDate(new Date(), "EST", "MM-dd-yyyy HH:mm:ss");
        SpreadsheetApp.getActiveSheet().getRange(row,cell1).setValue(time); 
    };
};

但是我只想在名为 "VariableMaster"的1张纸上触发它,所以我尝试了:

if(c.getColumn() != cell1 && s == "VariableMaster") {....

我还尝试在

下添加另一个if语句
 if(c.getColumn() != cell1 ) { 
      if(s.getActiveSheet == "VariableMaster"){...

两次尝试都会破坏该功能,并且不会将时间戳添加到任何工作表中。谢谢!

1 个答案:

答案 0 :(得分:2)

您要检查的参数是工作表名称,因此您必须比较工作表名称

使用if(c.getColumn() != cell1 && s.getName() == "VariableMaster") {....