有没有一种方法可以更新此脚本,使其仅在编辑特定列中的单元格而不是任何单元格时才运行?

时间:2019-10-25 14:08:17

标签: google-apps-script google-sheets

Google表格问题:我需要显示单元格的新值与其先前值之间的差,以设置TRUE值(如果差值大于x)。此刻,我正在使用此脚本(对不起,我无法正确格式化该脚本!):

function previous() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();

    var source = ss.getRange('sheet1!B2:B');
  source.copyTo(ss.getRange('sheet2!C2:C'), {contentsOnly: true});
}

使用触发器,我将其设置为在进行编辑时运行,但是,我只希望它在B列中的单元格被编辑时运行。

这可能吗?

我尝试在脚本中添加range.GetColumn()部分,但是,我是脚本的新手,并且不确定所需的语法(甚至可以使用)。

1 个答案:

答案 0 :(得分:1)

为此,您可以使用onEdit(e) trigger并使用默认添加的参数(e)。

该对象具有类型为Range的名为范围(e.range)的属性。

然后在该函数内部,可以检查范围是否在要检查的列之内。

function onEdit(e) {
  if (e.range.getColumn()==3) {//for column C, as an example
     //execute here
  }
}

希望这会有所帮助!

相关问题