Chào mọi người,
Hôm nay mình muốn chia sẻ một cách rất hay để tự động cập nhật dữ liệu giữa các Sheet trong Google Sheets mà không cần phải làm thủ công hay dùng các công thức phức tạp như IMPORTRANGE (vốn có thể bị chậm hoặc lỗi khi dữ liệu lớn).
Cách mình muốn nói đến là sử dụng Google Apps Script. Nếu bạn nào chưa quen thì đừng lo, mình sẽ hướng dẫn chi tiết các bước cơ bản nhất.
Tại sao nên dùng Google Apps Script?
- Tự động hóa hoàn toàn quá trình cập nhật.
- Linh hoạt, có thể tùy chỉnh theo nhiều logic phức tạp.
- Xử lý tốt với lượng dữ liệu lớn.
Các bước thực hiện cơ bản:
- Mở trình chỉnh sửa Script: Vào Tiện ích > Trình chỉnh sửa tập lệnh trong file Google Sheet của bạn.
- Viết hàm: Ví dụ, để sao chép dữ liệu từ Sheet 'Nguồn' sang Sheet 'Đích', bạn có thể viết một hàm đơn giản như sau:
function autoUpdateData() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sourceSheet = ss.getSheetByName('Nguồn'); var destSheet = ss.getSheetByName('Đích'); var data = sourceSheet.getDataRange().getValues(); destSheet.clearContents(); destSheet.getRange(1, 1, data.length, data[0].length).setValues(data);} - Thiết lập trình kích hoạt (Trigger): Để hàm tự động chạy, bạn cần thiết lập một trigger. Vào biểu tượng đồng hồ báo thức (Triggers) ở thanh bên trái, chọn 'Thêm trình kích hoạt', chọn hàm
autoUpdateData, chọn sự kiện là 'Khi chỉnh sửa biểu mẫu' hoặc 'Theo thời gian' (ví dụ: mỗi giờ).
Đây chỉ là một ví dụ rất cơ bản. Bạn có thể tùy chỉnh logic để chỉ cập nhật những phần dữ liệu thay đổi, hoặc thực hiện các phép tính trước khi cập nhật. Nếu có câu hỏi gì hoặc muốn thảo luận sâu hơn về các trường hợp cụ thể, đừng ngần ngại để lại bình luận bên dưới nhé!