Lọc tìm giá trị Min và ẩn các hàng có giá trị lớn hơn.

Liên hệ QC

tuiyeupnno

Thành viên mới
Tham gia
10/12/13
Bài viết
3
Được thích
0
Chào các anh/chị trên diễn đàn.
Em có file excel chứa các giá trị tính toán, để làm thuyết minh gọn gàng thì nên lọc và giữ lại các giá trị mang tính quyết định nhất thôi, vậy nên e xin nhờ các anh chị thành viên có hiểu về trường hợp này cho em vài hướng dẫn/code VBA xử lý tình huống này.
Thông số cụ thể em để trong file đính kèm cùng kết quả mong muốn.
Em cảm ơn!
 

File đính kèm

  • Book1_hỏi GPE code lọc và ẩn hàng theo điều kiện.xlsx
    36.3 KB · Đọc: 12
PHP:
Sub AnCacDongKhongThoa()
Dim WF As Object, Rng As Range, sRng As Range
Dim Rws As Long, STT As Integer, Min_ As Double

1 Rws = [C6].CurrentRegion.Rows.Count
Set Rng = [K7].Resize(Rws)
Set WF = Application.WorksheetFunction
Min_ = WF.Min(Rng)
Set sRng = Rng.Find(Min_, , xlFormulas, xlWhole)
If Not sRng Is Nothing Then
    STT = Cells(sRng.Row, "A").Value
End If
9 Set Rng = Nothing
For Min_ = 7 To Rws + 9
    If Cells(Min_, "A").Value <> STT Then
        Rows(Min_ & ":" & Min_).Hidden = True
    End If
Next Min_
End Sub

Bạn thử xem sao.
 
Lần chỉnh sửa cuối:
PHP:
Sub AnCacDongKhongThoa()
Dim WF As Object, Rng As Range, sRng As Range
Dim Rws As Long, STT As Integer, Min_ As Double

Rws = [C6].CurrentRegion.Rows.Count
Set Rng = [K7].Resize(Rws)
Set WF = Application.WorksheetFunction
Min_ = WF.Min(Rng)
Set sRng = Rng.Find(Min_, , xlFormulas, xlWhole)
If Not sRng Is Nothing Then
    STT = Cells(sRng.Row, "A").Value
End If
Set Rng = Nothing
For Min_ = 7 To Rws + 9
    If Cells(Min_, "A").Value <> STT Then
        Rows(Min_ & ":" & Min_).Hidden = True
    End If
Next Min_
End Sub

Bạn thử xem sao.
Em cảm ơn, em đã chạy code này và ra đúng kết quả rồi.
Cho em hỏi thêm chút liên quan là trong bảng tính cụ thể khi em đặt cái bảng của em xuống bắt đầu từ hàng 95 (lùi xuống 90 rows) thì cần sửa code như nào ạ? Em đã thử chỉnh các con số 6,7 trong code về các số mới ở vị trí tương ứng mới nhưng KQ lại không được như cũ ^^. Mong anh chỉ giáo thêm :))
 
(Xem số của dòng lệnh bài trên của mình)
(1) [C6] => [C96]
(2) [K7] => [K97]
(10) For Min_ = 97 To Rws + 99

Mong bạn sẽ nhận được kết quả mĩ mãn!
 
Web KT
Back
Top Bottom