Lọc 3 dòng liên tiếp (5 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

nguyenvanthao2002

Thành viên mới
Tham gia
11/12/13
Bài viết
42
Được thích
3
Em nhờ các anh chị giúp em lọc lấy dữ liệu 3 dòng liên tiếp như file đính kèm. Em xin cám ơn
 

File đính kèm

Hahaha, tôi tải cũng được cảnh báo!

.
 
Em nhờ các anh chị giúp em lọc lấy dữ liệu 3 dòng liên tiếp như file đính kèm. Em xin cám ơn
Bạn thử code xem chạy được không?
Mã:
Sub test()
Dim Arr(), Res(), Lr As Long, i As Long, j As Long, k As Long, b As Long
With Sheet1
    Lr = .Range("A" & Rows.Count).End(xlUp).Row
    Arr = .Range("A2:B" & Lr + 3).Value
    ReDim Res(1 To UBound(Arr), 1 To 2)
    For i = 1 To UBound(Arr)
        If InStr(Arr(i, 1), "M15") > 0 And InStr(Arr(i + 1, 1), "ENTRY") > 0 And InStr(Arr(i + 2, 1), "SL") > 0 Then
            k = k + 1
            For b = 1 To 2
                Res(k, b) = Arr(i, b)
                Res(k + 1, b) = Arr(i + 1, b)
                Res(k + 2, b) = Arr(i + 2, b)
            Next b
            k = k + 2
        End If
        If i = Lr Then Exit For
    Next i
    If k Then
    .Range("I18").Resize(UBound(Arr), 2).Value = Res
    End If
End With
End Sub
 
Lần chỉnh sửa cuối:
Bạn thử code xem chạy được không?
Mã:
Sub test()
Dim Arr(), Res(), Lr As Long, i As Long, j As Long, k As Long, b As Long
With Sheet1
    Lr = .Range("A" & Rows.Count).End(xlUp).Row
    Arr = .Range("A2:B" & Lr + 3).Value
    ReDim Res(1 To UBound(Arr), 1 To 2)
    For i = 1 To UBound(Arr)
        If InStr(Arr(i, 1), "M15") > 0 And InStr(Arr(i + 1, 1), "ENTRY") > 0 And InStr(Arr(i + 2, 1), "SL") > 0 Then
            k = k + 1
            For b = 1 To 2
                Res(k, b) = Arr(i, b)
                Res(k + 1, b) = Arr(i + 1, b)
                Res(k + 2, b) = Arr(i + 2, b)
            Next b
            k = k + 2
        End If
        If i = Lr Then Exit For
    Next i
    If k Then
    .Range("I18").Resize(UBound(Arr), 2).Value = Res
    End If
End With
End Sub
Em cám ơn Anh nhiều.
 
Web KT

Bài viết mới nhất

Back
Top Bottom