Cách tổng hợp nhiều sheet excel vào một sheet tổng hợp bằng VBA, đủ code đính kèm

Khi chúng ta sử dụng Excel, bạn thường hợp nhất nhiều shee vào một sheet lớn để phân tích và tính toán dữ liệu dễ dàng hơn. Hầu hết người sử dụng sử dụng lệnh sao chép và dán, nhưng khi có nhiều sheet tính, cách này rất tốn thời gian. Trong bài viết này, Học Excel Online sẽ hướng dẫn các bạn một số mẹo để giải quyết vấn đề. 

Hợp nhất tất cả sheet từ một file excel đang mở thành một sheet tính bằng VBA:

Giả sử bạn có ba sheet tính (Grade1, Grade2, Grade3) chứa thông tin của học sinh, bạn cần hợp nhất chúng vào một sheet tính như hình dưới đây :

Mã VBA sau có thể giúp bạn lấy dữ liệu của tất cả sheet tính từ file tính đang hoạt động và kết hợp chúng thành trang tính mới. Đồng thời, tất cả trang tính phải có cùng cấu trúc, cùng tiêu đề cột và thứ tự cột. Hãy làm như sau:

  1. Nhấn giữ Alt + F11, hộp thoại Microsoft Visual Basic for Applications mở ra.
  2. Nhấp Insert > Module, và dán đoạn mã sau vào cửa sổ Module.
  1. Nhấn F5 để chạy mã. Tất cả dữ liệu trong bảng tính đã được hợp nhất thành trang tính Combined được đặt trước các trang tính khác.

Chú ý.

(1) Dữ liệu của bạn phải bắt đầu từ ô A1, nếu không đoạn mã sẽ không hoạt động.

(2) Dữ liệu của bạn phải có cùng cấu trúc.

(3) Mã này chỉ có thể kết hợp tất cả trang tính của một bảng tính, nếu bạn muốn hợp nhất nhiều trang tính từ nhiều bảng tính khác nhau, đoạn mã này sẽ không hoạt động.

VBA giúp ích rất nhiều trong công việc: giúp bạn tăng tốc trong quá trình xử lý trên excel, giúp lập các báo cáo tự động, điều khiển các chương trình khác như word, power point, outlook… giúp biến file excel của bạn trở thành 1 phần mềm chuyên nghiệp…

Để có thể học VBA một cách đầy đủ, có hệ thống, bạn hãy tham gia khoá học VBA101 – VBA cơ bản dành cho người mới bắt đầu của hệ thống Học Excel Online. Hiện nay hệ thống đang có nhiều ưu đãi khi bạn đăng ký khóa học này. Chi tiết xem tại: