将 OLDVALUE 复制到新的 CELL

Copy OLDVALUE to new CELL

这可能是一个简单的问题,但我遇到了问题。我的代码不起作用。我正在尝试将 C2 的预编辑值复制到 A1 (Same Sheet)

  var ss = SpreadsheetApp.getActive();
var wscopy = ss.getSheetByName('Main');
var wspaste = ss.getrange('Main!A1');
function onEdit(e){
  var OLDVALUE;
OLDVALUE = e.OldValue;
wspaste.setValue(OLDVALUE);
}

我错过了什么吗?感谢您的指导。

修改点:

  • 在你的脚本中,
    • 请将var wspaste = ss.getrange('Main!A1');getrange修改为getRange
    • 请将OLDVALUE = e.OldValue;OldValue修改为oldValue
  • 我认为在您的脚本中,事件对象可用于检索 wspaste

当以上几点反映到你的脚本中,就会变成下面这样。

修改后的脚本:

function onEdit(e) {
  if (e.range.getA1Notation() != "C2") return; // Added
  var wspaste = e.source.getRange('Main!A1');
  var OLDVALUE;
  OLDVALUE = e.oldValue;
  wspaste.setValue(OLDVALUE);
}

参考文献: