Làm cách nào để hiển thị Ngày và người dùng đã chỉnh sửa Lần cuối trên Google Sheets?


7

Tôi đã có một trang Google được một số người cập nhật khá thường xuyên.

Tôi muốn có thể xem tài liệu và trong nháy mắt, có một ô hiển thị ngày (lần sửa đổi cuối cùng) và một ô khác (người dùng đã thực hiện sửa đổi).

Đây có phải là tất cả có thể và làm thế nào tôi sẽ làm điều này?

Một cái gì đó như thế này:

nhập mô tả hình ảnh ở đây

Câu trả lời:


2

Như Amit đã nói trong câu trả lời của mình , trình kích hoạt onEdit () sẽ hoạt động cho việc này và bạn sẽ cần nhận các giá trị từ đối tượng Chỉnh sửa sự kiện . Một giải pháp hoàn chỉnh cho trường hợp sử dụng này sẽ là một cái gì đó như:

function onEdit(e) {
    // Prevent errors if no object is passed.
    if (!e) return;
    // Get the active sheet.
    e.source.getActiveSheet()
        // Set the cell you want to update with the date.
        .getRange('M2')
        // Update the date.
        .setValue(new Date());
    // Get the active sheet.
    e.source.getActiveSheet()
        // Set the cell you want to update with the user.
        .getRange('M3')
        // Update the user (only email is available, and only if security settings allow).
        .setValue(e.user.getEmail() );
}

Sau đó, bạn chỉ cần gọi hàm từ bất kỳ ô ngẫu nhiên nào như vậy: =onEdit()và sau đó, bất kỳ ô nào bạn chỉnh sửa sẽ cập nhật các ô bạn đặt trong tập lệnh của mình.

Cảnh báo : Trình kích hoạt onEdit () sẽ làm hỏng lịch sử hoàn tác / làm lại của bạn. Mỗi lần nó kích hoạt khi bạn chỉnh sửa một ô, hành động từ trình kích hoạt sẽ được thêm vào lịch sử hoàn tác, có nghĩa là hai điều: 1. Để hoàn tác việc cuối cùng bạn đã làm, bạn phải hoàn tác hai lần liên tiếp (một lần cho onEdit ( ), một lần cho chỉnh sửa của bạn). 2. Vì onEdit () cũng kích hoạt mỗi khi bạn hoàn tác một cái gì đó, nó thực sự thoát khỏi lịch sử làm lại của bạn bằng cách ghi đè ngay lập tức.


1
only email is available, and only if security settings allow<bất kỳ con trỏ nào về cách cho phép cài đặt bảo mật này cho người dùng khác trong một trang google được chia sẻ? Không sử dụng ứng dụng google cho doanh nghiệp. Chỉ là miễn phí.
slayernoah

@slayernoah - Có vẻ như getEmail là Lớp người dùng duy nhất. Xem: developers.google.com/apps-script/reference/base/user
Zlatty

chức năng chưa biết OnEdit
Serge

1

Bạn có thể thiết lập trình kích hoạt onEdit sẽ ghi lại ngày chỉnh sửa và các chi tiết khác trong một trang tính khác trong cùng một bảng tính.

function onEdit(e){
  var range = e.range;
  range.setNote('Last modified: ' + new Date());
}
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.