Chào các bạn,
Mình có 1 file như file excel đính kèm. Trong file mình có 116 sheets với nội dung bảng như nhau. Ở cột H sẽ có các giá trị trả về từ hệ thống là 1 hoặc 0. Mình muốn ẩn các dòng ở tất cả các sheets nếu dòng đó ở cột H có giá trị 1. Mình chỉ biết dùng filter đơn giản để lọc dữ liệu, nhưng như vậy không thể làm tự động cho 116 sheets được.
Không biết có VBA nào có thể tạo ẩn dòng theo logic đã nêu không? Tại mình không rành VBA lắm, đọc trên mạng thử áp dụng mấy dòng lệnh sau mà chạy không ra Mong các bạn cao nhân có thể giúp mình. Mình xin cám ơn các bạn trước nhé.
Private Sub Worksheet_selectionChange(ByVal Target As Range)
Dim c As Range
Dim firstAddress As String
Application.ScreenUpdating = False
If Not Intersect(Target, Range("c4:c23")) Is Nothing Then
Rows("6:300").Hidden = False
With Range("H6:H300")
Set c = .Find(What:="", LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
c.EntireRow.Hidden = True
Set c = .FindNext(c)
Loop While Not c Is Nothing
End If
End With
End Sub
Mình có 1 file như file excel đính kèm. Trong file mình có 116 sheets với nội dung bảng như nhau. Ở cột H sẽ có các giá trị trả về từ hệ thống là 1 hoặc 0. Mình muốn ẩn các dòng ở tất cả các sheets nếu dòng đó ở cột H có giá trị 1. Mình chỉ biết dùng filter đơn giản để lọc dữ liệu, nhưng như vậy không thể làm tự động cho 116 sheets được.
Không biết có VBA nào có thể tạo ẩn dòng theo logic đã nêu không? Tại mình không rành VBA lắm, đọc trên mạng thử áp dụng mấy dòng lệnh sau mà chạy không ra Mong các bạn cao nhân có thể giúp mình. Mình xin cám ơn các bạn trước nhé.
Private Sub Worksheet_selectionChange(ByVal Target As Range)
Dim c As Range
Dim firstAddress As String
Application.ScreenUpdating = False
If Not Intersect(Target, Range("c4:c23")) Is Nothing Then
Rows("6:300").Hidden = False
With Range("H6:H300")
Set c = .Find(What:="", LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
c.EntireRow.Hidden = True
Set c = .FindNext(c)
Loop While Not c Is Nothing
End If
End With
End Sub