Почему не отрабатывает событие Edit?

Пишу скрипт и столкнулся с такой проблемой, что событие Edit не возникает в при копировании в ячейку значения с помощью [ctrl]+[v]. Оно возникает только в случае, когда проваливаешься в ячейку двойным кликом и меняешь значение.

Подскажите пожалуйста какой выход? Заменять на Change не хочу, ибо там нет полезных свойств события Edit :(

Событие происходит в Таблицах Гугл. Да вот даже элементарный вывод алерта при срабатывании события Edit не сработает, если вставить данные методом копирования в ячейку - событие Edit просто не возникает. Оно возникает лишь во всех тех случая, когда проваливаешься в ячейку и меняешь данные.

function functionKey(e) {
    var firstvalue = e.oldValue; //Начальное значение ячейки
    var finiteValue = e.value; // Конечное значение ячейки

    var ui = SpreadsheetApp.getUi(); // get ui for alert
    ui.alert(finiteValue); // вывод значения в окне alert

}

function createSpreadsheetOnEditTrigger() {
    var ss = SpreadsheetApp.getActive();
    ScriptApp.newTrigger("functionKey")
        .forSpreadsheet(ss)
        .onEdit()
        .create();
}

Ответы (1 шт):

Автор решения: oshliaer

Это довольно интересный эффект.

Попробуйте не проверять oldValue, т.к. это свойство доступно только при редактировании одной ячейки.

Cell value prior to the edit, if any. Only available if the edited range is a single cell. Will be undefined if the cell had no previous content.

Справка

Если не ошибаюсь, работа с буфером не относится к этому варианту. Поэтому всегда делайте

const finiteValue = e.range.getValue();

Про предыдущее значение лучше забыть или использовать другой подход для хранения таких данных, например, обычное зеркалирование.

→ Ссылка