Dựa vào nội dung dẫn giải ở #4 và nội dung xác nhận ở #5, tôi có mấy ý như sau:
1. Tôi không cho rằng công việc này nên làm bằng macro, vì tính hiệu quả không cao, dễ nhầm lẫn. Có lẽ bạn nên làm bằng tay. Tuy nhiên
nếu bạn vẫn cố ý muốn thực hiện bằng được công việc này bằng macro, thì sau đây chúng ta cần thống nhất logic.
2. Nội dung logic cần thống nhất:
Yêu cầu nói là xóa cả title, tuy nhiên title là định nghĩa mơ hồ, không rõ ràng với máy tính. Thế nào là title thì chỉ có bạn hiểu, còn máy tính không hiểu.
Dựa vào data bạn đưa thì đề xuất như sau:
2.1 Xác định vùng cần xóa
Từ ô màu xám, chạy lên các dòng phía trên, tìm kiếm dòng có dữ liệu cuối cùng, xác định đây là dòng title. Ở hình vẽ dưới, tôi có ô xám cuối cùng là ở dòng 29. Chạy ngược lên các dòng phía trên, phát hiện dòng 5 là dòng chứa dữ liệu, mặc dù không có màu xám, nhưng dòng tiếp theo là dòng 4 không chứa dữ liệu.
Bạn cần đăng nhập để thấy hình ảnh
Do đó xác định vùng cần xóa trải dài từ ô màu xám cuối cùng (dòng 29) cho tới dòng có chứa dữ liệu ở trên cùng (dòng 5) là:
Bạn cần đăng nhập để thấy hình ảnh
2.2 Làm rõ định nghĩa thế nào là màu xám.
Định nghĩa màu xám là khái niệm mơ hồ, chỉ có con người hiểu, máy tính không hiểu. Chúng ta có rất nhiều màu được coi là màu xám.
Bạn cần đăng nhập để thấy hình ảnh
Không chỉ là màu xám, trong xử lý dữ liệu Excel, đôi khi người ta tô màu đen cũng có hàm ý là xóa bỏ hoàn toàn. Để code chính xác, cần đưa ra cụ thể là tô màu nào thì hiểu là xóa. Việc này mất thời gian.
Dựa vào dữ liệu bạn đưa thì màu được xác định là: 6740479
Gợi ý:
MsgBox Range("N6").Interior.Color
Đến đây, nếu bạn đồng ý thì tôi sẽ code. Dự kiến thời gian code 2h. Mong muốn: Bạn hỗ trợ tài chính cho diễn đàn ứng với công sức code 2h, thì tôi sẽ tiến hành code. 1h = 50k. Vậy mong muốn nhận được 100k hỗ trợ diễn đàn hoạt động.
Thông tin ủng hộ diễn đàn:
Tài khoản Ngân hàng thương mại cổ phần Ngoại thương Việt Nam Vietcombank, số tài khoản: 0011003264055
Chi nhánh Quận Hoàn Kiếm, Hà Nội.
Chủ tài khoản: Phạm Minh Hoàng.