Cách ẩn cột, ẩn hàng trong Excel bằng VBA
Việc ẩn cột, ẩn hàng trong Excel được ứng dụng trong nhiều trường hợp: Bạn muốn trình bày một số nội dung, trong đó những cột / hàng chứa nội dung không cần thiết sẽ được ẩn đi thay vì xóa . Vì khi ẩn đi thì có thể mở ẩn là sử dụng bình thường, còn xóa thì sẽ mất luôn những dữ liệu đã xóa, ...
Việc ẩn cột, ẩn hàng trong Excel được ứng dụng trong nhiều trường hợp:
- Bạn muốn trình bày một số nội dung, trong đó những cột / hàng chứa nội dung không cần thiết sẽ được ẩn đi thay vì xóa. Vì khi ẩn đi thì có thể mở ẩn là sử dụng bình thường, còn xóa thì sẽ mất luôn những dữ liệu đã xóa, gây ảnh hưởng tới những nội dung khác.
- Trong một số hàm tính toán có phân biệt những giá trị ẩn, do đó việc ẩn/ mở ẩn sẽ ảnh hưởng tới 1 số hàm và kết quả mong muốn.
- Khi copy dữ liệu trong VBA, chúng ta cần ẩn những nội dung không cần thiết đi để lấy được kết quả mong muốn
Vậy cách ẩn cột, ẩn hàng và bỏ ẩn được thực hiện trong VBA như thế nào? Chúng ta cùng tìm hiểu nhé:
Cách ẩn Cột trong VBA
1. Ẩn cột đã được xác định cụ thể
Những cột đã được xác định cụ thể là những cột có thể gọi tên một cách trực tiếp.
Câu lệnh như sau:
Tên sheet.Vùng chứa những cột cần ẩn.EntireColumn.Hidden = True
Gọi tên vùng chứa cột cần ẩn, sau đó sử dụng “EntireColumn” để chỉ định tới các cột trong vùng đó.
Sau đây là một số ví dụ:
Ẩn cột A và cột C trong Sheet1
Trong ví dụ trên, vì cùng thực hiện trong Sheet1 do đó chúng ta có thể đặt With Sheet1…. End With để viết Code cho gọn hơn
Để ẩn các cột liền nhau thì ra có thể gom chung các vùng đó, ví dụ như ẩn cột từ A đến D (gồm các cột A, B, C, D) như sau:
Sheet1.Range(“A1:D1”).EntireColumn.Hidden = True
2. Ẩn cột không xác định cụ thể
Những cột không xác định cụ thể là cột được xác định dựa theo Range động.
Ví dụ:
Ẩn cột từ cột C tới cột cuối cùng có chứa dữ liệu trong bảng sau:
Câu lệnh như sau:
Cách bỏ ẩn cột trong VBA
Để mở ẩn cột, chúng ta sẽ chọn thuộc tính True bằng thuộc tính False trong câu lệnh ẩn cột
Câu lệnh như sau:
Tên sheet.Vùng chứa những cột cần ẩn.EntireColumn.Hidden = False
Ví dụ:
Để mở ẩn cột A, B, C, D đã ẩn ở trên, chúng ta dùng câu lệnh:
Sheet1.Range(“A1:D1”).EntireColumn.Hidden = False
Cách Ẩn / Bỏ ẩn Hàng trong VBA
Tương tự với cách ẩn cột, chúng ta thực hiện việc ẩn hàng bằng cách thay nội dung ‘EntireColumn’ thành ‘EntireRow’
Câu lệnh ẩn hàng như sau:
Tên sheet.Vùng chứa những hàng cần ẩn.EntireRow.Hidden = True
Câu lệnh bỏ ẩn hàng như sau:
Tên sheet.Vùng chứa những hàng cần ẩn.EntireRow.Hidden = False
Ví dụ:
Ẩn dòng từ dòng 2 tới dòng 4 trong Sheet1:
Sheet1.Range(A2:A4).EntireRow.Hidden = True
Bỏ ẩn dòng 2 tới dòng 4 trong Sheet 1:
Sheet1.Range(A2:A4).EntireRow.Hidden = False
Ẩn từ dòng 5 tới dòng cuối cùng có chứa dữ liệu trong bảng trên:
Tải về file mẫu tại: http://bit.ly/2snJ3ak
Chúc các bạn học tốt cùng Học Excel Online!