TypeError: Không thể đọc thuộc tính 'nguồn' của onEdit không xác định @ macros.gs:6 [trùng lặp]

Jan 16 2021

Vì vậy, tôi có mã này để di chuyển hàng từ trang tính này sang trang tính khác với xác thực dữ liệu "Đã bán" nhưng khi tôi cố gắng thực thi mã này, nó báo TypeError: Không thể đọc thuộc tính 'nguồn' của onEdit không xác định @ macros.gs:6

    function onEdit(event) {
// assumes source data in sheet named Sheet1
// target sheet of move to named Sheet2
// test column with yes is col 6 or F
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = event.source.getActiveSheet();
var r = event.source.getActiveRange();

if(s.getName() == "Pioneer Powersports" && r.getColumn() == 6 && r.getValue() == "Sold") {
var row = r.getRow();
var numColumns = s.getLastColumn();
var targetSheet = ss.getSheetByName("Sold Item");
var target = targetSheet.getRange(targetSheet.getLastRow() + 1, 1);
s.getRange(row, 1, 1, numColumns).moveTo(target);
s.deleteRow(row);
}
}

Trả lời

NikkoJ. Jan 16 2021 at 04:20

eventbiến trong chức năng của bạn có nghĩa là bạn đang triển khai Trình kích hoạt . Để onEdit (e) hoạt động, bạn phải thay đổi một giá trị trong bảng tính của mình.

Nếu bạn chạy nó trên trình chỉnh sửa, không có giá trị nào được truyền lại trên biến sự kiện, điều này khiến thuộc tính 'nguồn' không xác định.

Tài liệu tham khảo:

Đối tượng sự kiện tập lệnh Google Apps

Kích hoạt đơn giản