Nhờ các bạn viết giúp đoạn code để xoá dữ liệu (2 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

Tôi tuân thủ nội quy khi đăng bài

pqkythuat1

Thành viên mới
Tham gia
14/1/23
Bài viết
35
Được thích
2
Chào các bạn,
Xin các bạn giúp mình đoạn code để xoá toàn bộ dòng nếu giá trị ở cả 3 ô ở cột C, D và E ở 2 dòng liền kề nhau giống nhau ạ.
a52e4e30-5abf-44bf-8e36-1f371bf05c84.png

Mình xin gửi link chỉnh sửa

Cám ơn các bạn rất nhiều ạ.
 
Mình xin phép đưa đoạn code ra đây để mọi người có thể tham khảo ạ.

Mã:
function xoa2DongLienKeTrung() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName('data');

  var dataRange = sheet.getDataRange();
  var values = dataRange.getValues();
  var numRows = values.length;

  // Duyệt qua từng dòng từ dòng thứ 2 đến dòng cuối cùng
  for (var i = numRows - 1; i > 0; i--) {
    var currentRow = values[i];
    var previousRow = values[i - 1];

    // Kiểm tra nếu giá trị của cả ba cột giống nhau
    if (currentRow[2] === previousRow[2] && currentRow[3] === previousRow[3] && currentRow[4] === previousRow[4]) {
      // Xóa cả hai dòng liền kề nếu điều kiện được thỏa mãn
      sheet.deleteRow(i + 1);
      sheet.deleteRow(i);
    }
  }
}

Mã:
function removeDuplicates() {
  // Nhận tham chiếu đến bảng tính
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("data");

  // Lấy phạm vi dữ liệu cần kiểm tra
  var range = sheet.getRange("C2:E" + sheet.getLastRow());

  // Khởi tạo biến đếm số lượng dòng trùng lặp
  var countDuplicates = 0;

  // Chạy vòng lặp từ dòng cuối đến dòng 2
  for (var i = range.getLastRow(); i >= 2; i--) {
    // Kiểm tra nếu dòng hiện tại có dữ liệu trùng lặp
    var isDuplicate = false;
    for (var j = i - 1; j >= 2; j--) {
      if (range.getValues()[i] == range.getValues()[j]) {
        isDuplicate = true;
        break;
      }
    }

    // Nếu có dữ liệu trùng lặp, xóa dòng hiện tại
    if (isDuplicate) {
      range.deleteRow(i);
      countDuplicates++;
    }
  }

  // Hiển thị thông báo số lượng dòng đã được xóa
  alert("Đã xóa " + countDuplicates + " dòng trùng lặp.");
}

Mã:
function removeAdjacentDuplicates() {
  // Nhận tham chiếu đến bảng tính
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("data");

  // Lấy phạm vi dữ liệu cần kiểm tra
  var range = sheet.getRange("C2:E" + sheet.getLastRow());

  // Khởi tạo biến đếm số lượng dòng trùng lặp
  var countDuplicates = 0;

  // Chạy vòng lặp từ dòng cuối đến dòng 2
  for (var i = range.getLastRow(); i >= 2; i--) {
    // Kiểm tra nếu dòng hiện tại có dữ liệu trùng lặp với dòng trước đó
    var isDuplicate = false;
    if (range.getValues()[i] == range.getValues()[i - 1]) {
      isDuplicate = true;
    }

    // Nếu có dữ liệu trùng lặp, xóa dòng hiện tại và dòng trước đó
    if (isDuplicate) {
      range.deleteCells(i - 1, 2);
      countDuplicates++;
    }
  }

  // Hiển thị thông báo số lượng dòng đã được xóa
  alert("Đã xóa " + countDuplicates + " dòng trùng lặp.");
}
 
Web KT

Bài viết mới nhất

Back
Top Bottom