激活单元格不适用于 onEdit(但它适用于 OnOpen)

Activate cell does not work on onEdit (but it does on OnOpen)

我有这个非常简单的代码:

function onEdit(e) {
var spreadsheet = SpreadsheetApp.getActive();
var sheet = spreadsheet.getSheetByName('DaSheet');

var lastWeightRow = sheet.getLastRow();
sheet.getRange(lastWeightRow+1,1).activate();   //Move the cursor/scroll

var normalStyle = SpreadsheetApp.newTextStyle().setFontSize(10).setBold(false).build();
var attentionStyle = SpreadsheetApp.newTextStyle().setFontSize(24).setBold(true).build();

var lastWeightRowNum = sheet.getLastRow();  // 
var row = sheet.getRange(lastWeightRowNum-1, 1, 1, sheet.getMaxColumns());
row.setTextStyle(normalStyle);
row = sheet.getRange(lastWeightRowNum, 1, 1, sheet.getMaxColumns());
row.setTextStyle(attentionStyle);

//Move the cursor/scroll try again at the end
var firstEmptyCellString =  `A${lastWeightRowNum+1}`;
sheet.getRange(firstEmptyCellString).activate();
};

问题是线路:

sheet.getRange(lastWeightRow+1,1).activate(); 

and/or

sheet.getRange(firstEmptyCellString).activate();

以上语句都没有移动光标。不知何故,我无法在 onEdit 函数中移动光标,而在 onOpen 函数中,任一语句都可以正常工作。为什么不在 onEdit 中?

注意:为了验证是否真的调用了 onEdit 函数,我在

之间切换
var attentionStyle = SpreadsheetApp.newTextStyle().setFontSize(24).setBold(true).build();

var attentionStyle = SpreadsheetApp.newTextStyle().setFontSize(48).setBold(true).build();

按预期工作,最后一行是 'highlighted',大小为 24 或 48。

对我来说,光标在 LastRow + 1 处结束

function onEdit(e) {
  //e.source.toast("Entry")
  const sh = e.range.getSheet();
  if (sh.getName() == 'DaSheet') {
    //e.source.toast('Flag1')
    var lr = sh.getLastRow();
    var normalStyle = SpreadsheetApp.newTextStyle().setFontSize(10).setBold(false).build();
    var attentionStyle = SpreadsheetApp.newTextStyle().setFontSize(24).setBold(true).build();
    sh.getRange(lr - 1, 1, 1, sh.getMaxColumns()).setTextStyle(normalStyle);
    sh.getRange(lr, 1, 1, sh.getMaxColumns()).setTextStyle(attentionStyle);
    sh.getRange(`A${lr + 1}`).activate();
  }
}