仅在一列中使用 onEdit

Jel*_*ans 6 events edit google-sheets google-apps-script

我目前正在使用这个脚本:

function onEdit(e)

  // Set a comment on the edited cell to indicate when it was changed.
  var range = e.range;
  range.setNote('Laatst veranderd: ' + new Date());
Run Code Online (Sandbox Code Playgroud)

我需要添加什么才能只在“C”列中起作用?

Ala*_*lls 6

如果编辑了某个列,则限制代码在 Google 表格中运行。这使用 Apps 脚本onEdit()保留的函数名称,它被触发以在编辑事件上运行。

获取范围的列号:

function onEdit(e) {//"e" receives the event object
  var range = e.range;//The range of cells edited

  var columnOfCellEdited = range.getColumn();//Get column number
  //Logger.log(columnOfCellEdited)

  if (columnOfCellEdited === 3) {// Column 3 is Column C
    //Set a comment on the edited cell to indicate when it was changed.
    range.setNote('Laatst veranderd: ' + new Date());
  };
};
Run Code Online (Sandbox Code Playgroud)

另一个版本:

function onEdit(e) {//"e" receives the event object
  var range = e.range;//The range of cells edited

  var columnOfCellEdited = range.getColumn();//Get column number
  //Logger.log(columnOfCellEdited)


  if (columnOfCellEdited !== 3) {return;}// Halt the code if the column 
    //edited is not column C
    //Set a comment on the edited cell to indicate when it was changed.

  range.setNote('Laatst veranderd: ' + new Date());

};
Run Code Online (Sandbox Code Playgroud)


JPV*_*JPV -3

如果您希望脚本适用于 C 列中的编辑,请尝试

function onEdit(e) {
if(e.range.columnStart === 3) {
e.range.setNote('Laatst veranderd: ' + new Date());
  }
}
Run Code Online (Sandbox Code Playgroud)