Google sheets 组合两个设置值字符串

Google sheets 组合两个设置值字符串,google-sheets,Google Sheets,我正在尝试调整我的inEdit脚本,以便不仅提供时间戳,而且在另一个字段中添加“2” 我原以为下面的方法行得通,但只有日期行得通,它忽略了我的“2” 日期和2都出现在OneEdit中,我遗漏了什么 function onEdit() { var s = SpreadsheetApp.getActiveSheet(); if( s.getName() == "Sanshiro" ) { //checks that we're on the correct sheet var r =

我正在尝试调整我的inEdit脚本,以便不仅提供时间戳,而且在另一个字段中添加“2”

我原以为下面的方法行得通,但只有日期行得通,它忽略了我的“2”

日期和2都出现在OneEdit中,我遗漏了什么

function onEdit() {
  var s = SpreadsheetApp.getActiveSheet();
  if( s.getName() == "Sanshiro" ) { //checks that we're on the correct sheet
    var r = s.getActiveCell();
    if( r.getColumn() == 6 ) { //checks the column
      var nextCell = r.offset(0, -5);
      if( nextCell.getValue() === '' ) //is empty?
        nextCell.setValue(new Date());
        nextCell = r.offset(0, 10);
      if( nextCell.getValue() === '' ) //is empty?
        nextCell.setValue("2");
    }    }

我不知道是否真的需要检查“nextcell”是否为空?如果进行了新的编辑,您仍然希望更新该单元格,对吗?无论如何,我认为您可以将脚本简化为:

function onEdit(e) {
if (e.source.getActiveSheet()
    .getName() !== "Sanshiro" || e.range.columnStart !== 6) return //checks that we're on the correct sheet
e.range.offset(0, -5)
    .setValue(new Date());
e.range.offset(0, 10)
    .setValue(2);
}

嗨,JPV,一如既往地感谢您的支持。我使用您提供的代码得到错误“TypeError:无法从undefined中读取属性“source”。(第2行,文件“Code”)”。我不太明白。另外,我确实需要is empty子句,因为我不希望onEdit覆盖。@Crattle:您是否尝试从脚本编辑器运行代码?这可以解释这个错误。该脚本使用一个简单的触发器,并由电子表格中的编辑“触发”。如果您在脚本编辑器中,则不会进行任何编辑,因此不会在所有未定义的参数中传递任何“事件对象”。只需进入电子表格“Sanshiro”,编辑第6列,看看会发生什么。啊,对了。。再次为我严重缺乏知识感到抱歉。。我想你必须运行脚本才能正常工作。我试过你善意提供的脚本,但“2”仍然没有出现在第11栏或任何其他栏中。还有,我将如何用您的脚本实现“is empty”行?已经测试过,似乎还可以。你能分享一份你的电子表格吗?嗨,JVP,谢谢,这是我工作表的最新版本。我想,自从你上次看到它以来,它已经发生了很大的变化。