Mike, là một kế toán, có nhu cầu ẩn các hàng trong một trang tính dựa trên các giá trị trong hai ô trong hàng. Bảng dữ liệu của anh ấy có ba cột và nếu một hàng chứa số 0 trong cột hai và ba, thì hàng đó sẽ bị ẩn. Nếu một trong hai cột hai hoặc ba trống hoặc chứa một số giá trị khác, thì hàng đó sẽ không bị ẩn.

Có một số cách bạn có thể tiếp cận vấn đề này. Đầu tiên là sử dụng AutoFilter của Excel. Chỉ cần tạo một cột khác có chứa công thức như sau:

=AND(B2=0,C2=0)

Giá trị được trả về bởi công thức sẽ chỉ là True nếu cả cột thứ hai (B) và cột thứ ba © đều chứa giá trị bằng không. Sao chép công thức vào các ô thích hợp khác trong cột và sau đó bạn có thể sử dụng Bộ lọc tự động để lọc dữ liệu dựa trên cột đó. Khi bạn chỉ hiển thị những hàng có giá trị Sai trong cột, thì bạn đã ẩn một cách hiệu quả các hàng có giá trị 0 trong cột hai và ba.

Bạn cũng có thể sử dụng macro để kiểm tra các hàng cho mình. Macro sau bước qua từng hàng trong trang tính, bắt đầu bằng hàng 1. Miễn là có một thứ gì đó trong cột A, thì macro sẽ kiểm tra để đảm bảo rằng có giá trị 0 trong cột B và C. Nếu có, thì thuộc tính .Hidden cho hàng được đặt.

Sub Hide()

Dim Criteria as Boolean     Dim i As Integer

i = 1     Do Until Trim(Cells(i, 1).Value) = ""          Criteria = True         Criteria = Criteria And (Cells(i, 2).Value = 0) _           And Cells(i, 2).Value <> ""

Criteria = Criteria And (Cells(i, 3).Value = 0) _           And Cells(i, 3).Value <> ""          If Criteria Then Rows(i).EntireRow.Hidden = True         i = i + 1      Loop  End Sub

Macro chạy cho đến khi nó gặp một hàng không có gì trong cột A. Điều này có nghĩa là bạn cần đảm bảo rằng thực sự có thứ gì đó trong các hàng trước bảng dữ liệu của bạn. Nếu bảng dữ liệu của bạn bắt đầu ở hàng 4 của trang tính và các ô từ A1 đến A3 không có gì trong đó, thì macro sẽ không bao giờ chạy ổn định. Tất nhiên, bạn có thể điều chỉnh macro trong trường hợp này để nó bắt đầu kiểm tra ở hàng 4; chỉ cần thay đổi gán ban đầu của biến i thành 4 thay vì 1.

_Lưu ý: _

Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên trang ExcelTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.

ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.

Mẹo này (2416) áp dụng cho Microsoft Excel 97, 2000, 2002 và 2003. Bạn có thể tìm thấy phiên bản của mẹo này cho giao diện ribbon của Excel (Excel 2007 trở lên) tại đây: