Code Ẩn dòng theo điều kiện ngày tháng!
Chào các bạn
Tôi thường làm việc với ngày tháng, và chọn 1 tháng để làm việc, nhưng bảng tính của tôi quá dài nên việc di chuyển đến các hàng trong bảng tính làm việc thì gặp nhiều khó khăn
Ví dụ: Từ B7:B10000 là ngày tháng, mình muốn làm việc tháng 2, bây giờ mình đặt cell B3 =2, và bấm code, như vậy các hàng trong cột B khác với tháng 2 thì bị ẩn đi, chỉ còn chừa các hàng mà cột B có tháng 2 hoặc hàng trống
Và các bạn cũng giúp code cho hiện trở lại các dòng ẩn luôn
Cảm ơn các bạn!
Bạn có thể gõ vào cell B2 công thức =OR(MONTH($B7)=$B$3,LEN($B7)=0) rồi dùng Advanced Filter để lọc
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range, rCrit As Range
On Error Resume Next
If Target.Address = "$B$3" Then
Set rng = Range("B6:B1000")
Set rCrit = Range("B1:B2")
rCrit(2, 1).Value = "=OR(MONTH($B7)=$B$3,LEN($B7)=0)"
rng.AdvancedFilter 1, rCrit
Target.Select
End If
End Sub
Hoặc tổng quát hơn 1 chút:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range, rCrit As Range
Dim sFirst As String
If Target.Address = "$B$3" Then
Set rng = Range("B6:B1000")
Set rCrit = Range("B1:B2")
sFirst = rng(2, 1).Address(0, 1)
rCrit(2, 1).Value = "=OR(MONTH(" & sFirst & ")=" & Target.Address & ",LEN(" & sFirst & ")=0)"
rng.AdvancedFilter 1, rCrit
Target.Select: rCrit.ClearContents
End If
End Sub
Đoạn Set rCrit = Range("B1:B2") bạn có thể sửa lại thành vùng nào tùy thích (ví dụ: Set rCrit = Range("IV1:IV2") cũng được)
www.giaiphapexcel.com/diendan/threads/code-%E1%BA%A8n-d%C3%B2ng-theo-%C4%91i%E1%BB%81u-ki%E1%BB%87n-ng%C3%A0y-th%C3%A1ng.76806/
Khóa học Power PI – Ứng dung trong Nhân sự
TỔNG QUAN KHÓA HỌC: POWER BI CHO NGÀNH NHÂN SỰ Khóa học Power BI cho Nhân sự được thiết kế dành riêng cho các...
Xem khóa học
Bình luận