Google sheet App Script | Tạo custom menu – Xóa tất cả dòng Rỗng trên vùng dữ liệu Nhanh chống
Sự mạnh mẽ của Google sheet là do kết hợp của bản tính + appscript + tương tác web. Bộ ba này giúp bạn tạo nên những trang web động tuyệt vời và hoàn toàn miễn phí. Nếu bạn cần tìm hiểu về các sản phẩm, ứng dụng cơ sỡ dữ liệu và web thì truy cập kênh youtube của mình tại Youtube/Netmediacctv. Riêng trong bài này, chúng ta chỉ nói về google sheet và một đoạn script trên nó để xử lý một yêu cầu đặt ra là “Tạo custom menu – Xóa tất cả dòng Rỗng trên vùng dữ liệu Nhanh chống“. Custom menu xóa dòng rỗng này sẽ hoạt động hiệu quả để bạn kiểm tra trên vùng dữ liệu lên đến hàng ngàn dòng. Nó xử lý khá ổn để bạn làm sạch vùng dữ liệu. Bên dưới đây là video demo, hướng dẫn cùng đoạn mã script nhé.
Các project appscript ngẫu nhiên:
- Google sheet webapp | Dropdown phụ thuộc – Truy xuất Spreadsheet và các Sheet phụ thuộc từ Folder
- Tạo hóa đơn trên Google sheet – Gửi email đính kèm hóa đơn pdf – Quản lý url hóa đơn trên danh sách
- Google sheet Ứng dụng theo dõi đơn hàng – Danh sách sản phẩm mua, trạng thái đơn hàng
- Tip on Ms Word Hướng dẫn tạo ngắt trang, xóa ngắt trang đơn lẽ hoặc toàn bộ ngắt trang trên file doc
- Google sheet | Generate QR Codes – Mã hóa nội dung Cell – Thêm hình ở giữa mã QR code
- Google sheet App Script | Tạo custom menu – Xóa tất cả dòng Rỗng trên vùng dữ liệu Nhanh chống
- Google Script Web | From upload file – Kiểm tra trùng lặp – Ghi đè hoặc Tạo phiên bản mới cho file
- Google Script Web | Trang Tìm kiếm nhiều điều kiên riêng lẽ hoặc hết hợp – Print, Xuất file PDF
- Hướng dẫn kiểm tra Bàn phím, Tháo và thay bàn phím mới cho Dell Inspirion 15 3000 series
- Google sheet webapp | Quản lý bán hàng – Chức nằn trả góp, In thông tin
Mã appscript sử dụng tham khảo
//Create menu
function onOpen(){
var ui = SpreadsheetApp.getUi();
ui.createMenu("TÁC VỤ")
.addItem("Delete empty row","deleteIntermittentEmptyRows")
.addToUi();
}
//End Create menu
//Delete empty row
function deleteIntermittentEmptyRows() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); // Lấy sheet đang hoạt động
var dataRange = sheet.getRange('A:P'); // Lấy phạm vi từ cột A đến cột AS
var values = dataRange.getValues(); // Lấy dữ liệu từ phạm vi
// Tìm dòng dữ liệu cuối cùng trong vùng A:P
var lastRow = sheet.getLastRow(); // Lấy dòng cuối cùng có dữ liệu trong sheet
// Lưu trữ các chỉ số dòng sẽ bị xóa
var rowsToDelete = [];
// Duyệt qua từng dòng từ 1 đến lastRow để kiểm tra dữ liệu
for (var i = 0; i < lastRow; i++) {
var isEmpty = values[i].every(function(cell) {
return cell === ''; // Kiểm tra xem tất cả các ô trong dòng có rỗng không
});
// Nếu dòng rỗng, lưu chỉ số dòng để xóa
if (isEmpty) {
rowsToDelete.push(i + 1); // Lưu chỉ số dòng với 1-based index
}
}
// Xóa các dòng trong thứ tự ngược lại để tránh ảnh hưởng tới chỉ số dòng
for (var j = rowsToDelete.length - 1; j >= 0; j--) {
sheet.deleteRow(rowsToDelete[j]);
}
}