Hướng dẫn cách gộp nhiều sheet vào một sheet tổng hợp bằng VBA có code đính kèm

Nội dung được viết bởi G-LEARNING

Khi chúng ta sử dụng Excel, bạn thường hợp nhất nhiều sheet 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, Gitiho.com 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 :

Hướng dẫn gộp nhiều Sheet Excel thành một Sheet tổng hợp bằng VBA 1

Hướng dẫn gộp nhiều Sheet Excel thành một Sheet tổng hợp bằng VBA 

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.

 

 

 Sub Combine()
 Dim J As Integer
 On Error Resume Next
 Sheets(1).Select
 Worksheets.Add
 Sheets(1).Name = "Combined"
 Sheets(2).Activate
 Range("A1").EntireRow.Select
 Selection.Copy Destination:=Sheets(1).Range("A1")
 For J = 2 To Sheets.Count
 Sheets(J).Activate
 Range("A1").Select
 Selection.CurrentRegion.Select
 Selection.Offset(1, 0).Resize(Selection.Rows.Count - 1).Select
 Selection.Copy Destination:=Sheets(1).Range("A65536").End(xlUp)(2)
 Next
 End Sub
  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.

Xem thêm: Học VBA từ cơ bản cho người mới

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…

Nếu công việc của bạn liên quan nhiều đến quản lý, phân tích dữ liệu và làm báo cáo trên bảng tính thì giỏi Excel thôi chưa đủ. Nếu chỉ dùng Excel, bạn sẽ thường xuyên phải OT đến mỗi kỳ làm báo cáo, stress vì sai dữ liệu do nhập thủ công, hay gặp vấn đề các hàm load chậm do dữ liệu quá nặng,...

Có lẽ bạn đã từng nghe ở đâu đó về công cụ lập trình VBA trên Excel, giúp bạn tiết kiệm tối đa thời gian làm việc nhờ làm báo cáo tự động, phân tích và xử lý số liệu chính xác tuyệt đối, đặc biệt công cần lọ mọ sửa thủ công,...

Nhưng bạn không dám nghĩ một ngày nào đó mình sẽ dùng VBA bởi vì mình không biết lập trình, sửa code và gỡ lỗi mã. Tin mình đi, bạn hoàn toàn có thể thành thạo công cụ này ngay cả khi không giỏi Excel, không biết lập trình với khóa học VBAG01: Tuyệt đỉnh VBA - Tự động hóa Excel với lập trình VBA tại Gitiho.

Tất tần tật những kiến thức từ cơ bản đến nâng cao về cách sử dụng VBA trong Excel sẽ được đề cập khiến mọi thao tác thủ công trên Excel gần như được loại bỏ hoàn toàn. 

Hãy nhấn vào Học thử hoặc Đăng ký ngay để cảm nhận sự “vi diệu” mà VBA mang lại cho công việc của bạn nhé!

5/5 - (1 bình chọn)

5/5 - (1 bình chọn)

0 thảo luận

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ thông tin và truyền thông