Hướng dẫn cách tự động trộn ô và căn lề giữa nhiều dữ liệu khác nhau trong Excel

Chắc hẳn chúng ta không lạ gì với chức năng Merge & Center của Excel. Tuy nhiên chức năng này có 1 hạn chế là nó chỉ nhóm được các dữ liệu giống nhau, còn trong một vùng ô có nhiều dữ liệu khác nhau thì lại không làm được. Vậy bạn có bao giờ tự hỏi: Làm thế nào để có thể Tự động trộn ô và căn lề giữa nhiều dữ liệu khác nhau trong Excel? Đúng rồi, chúng ta có thể làm được, mà làm tự động nữa là khác. Bởi vì chúng ta có thể sử dụng VBA để tạo ra chức năng đó. Hãy cùng Học Excel Online tìm hiểu ngay cách làm này nào.

Để giúp các bạn hình dung được mục tiêu, chúng ta sẽ xem bảng dữ liệu sau:

chỉ với 1 nút bấm, hay sử dụng 1 tổ hợp phím tắt, chúng ta đã có kết quả như sau (tự động thực hiện đồng thời cả 2 cột):

Chức năng Merge & Center chắc chắn không làm được như vậy phải không nào. Điều thú vị chính là VBA lại làm được điều này khá dễ dàng.

Viết lệnh tự động trộn ô và căn giữa trong VBA

Bước 1: Tại chương trình Excel, chúng ta mở cửa sổ VBA bằng cách bấm tổ hợp phím tắt Alt + F11

Bước 2: Tạo mới 1 Module

Bước 3: Trong Module vừa tạo, chúng ta dán đoạn code này:

Trong đoạn code trên, Học Excel Online đã giải thích rõ ý nghĩa của các đoạn code để các bạn có thể hiểu được cách hoạt động của từng câu lệnh.

Phương thức hoạt động của lệnh này là:

  • Xét vùng được chọn gồm các đối tượng: Số dòng, số cột.
  • Thực hiện trên từng cột. Trong mỗi cột xét các dòng có giá trị giống nhau hay không. Các giá trị giống nhau sẽ trộn ô. Các giá trị không giống nhau thì bỏ qua.
  • Sau khi trộn ô thì thực hiện căn giữa cho toàn bộ vùng dữ liệu đã chọn.

Gán nút lệnh để chạy Macro AutoMergeCenter

Bước 1: Vẽ ra 1 nút lệnh. Có thể sử dụng chức năng Insert/ Shapes vẽ ra 1 hình chữ nhật. Trong hình chữ nhật này nhập đoạn text là “Auto Merge”

Bước 2: Bấm chuột phải vào hình chữ nhật vừa tạo, chọn Assign Macro

Bước 3: Trong cửa sổ Assign Macro chúng ta thực hiện gán Sub AutoMergeCenter đã tạo ở trên

Bây giờ chúng ta chọn vùng A2:B15, sau đó bấm vào nút Auto Merge (hình chữ nhật) và xem kết quả nhé:

* Lưu ý:

Cách làm trên thực hiện được khi các dữ liệu giống nhau phải nằm liền kề nhau. Do đó các bạn nên sắp xếp dữ liệu trước khi thực hiện việc này nhé.

Tìm hiểu: Hướng dẫn cách sắp xếp dữ liệu theo nhiều điều kiện trong Excel

Ngoài ra các bạn có thể tham khảo thêm một vài ứng dụng các của VBA để thấy tính ứng dụng của VBA nhé:

Hướng dẫn cách lập báo cáo tổng hợp tự động với Excel và VBA

Tự động cập nhật báo cáo khi thay đổi thời gian bằng VBA

Hướng dẫn cách xuất dữ liệu hàng loạt từ Excel ra PDF bằng VBA


Tác giả: duongquan211287

· · ·

Khóa học mới xuất bản