Lọc, trích xuất dữ liệu từ 1 sheet rawdata sang sheet khác theo điều kiện.

Liên hệ QC

locbui1295

Thành viên mới
Tham gia
22/2/19
Bài viết
4
Được thích
0
Chào các anh chị,
Hiện tại em đang control dữ liệu theo model code bằng các file khác nhau có chung 1 nguồn raw data.
Bây giờ em có ý tưởng cải tiến các file control đó bằng 1 file chung. Bằng cách nhập MODEL CODE trên sheet HOME thì bên sheet DATA sẽ hiện chỉ hiện thông tin của CODE đó,( Như file đính kèm minh họa).
Em muốn nó auto hơn, không copy/paste nữa vì RAWDATA lớn.
Nhờ anh chị xem có phương án VBA, hay câu lệnh nào nào giúp em với.
Em xin cảm ơn.
 

File đính kèm

Chào các anh chị,
Hiện tại em đang control dữ liệu theo model code bằng các file khác nhau có chung 1 nguồn raw data.
Bây giờ em có ý tưởng cải tiến các file control đó bằng 1 file chung. Bằng cách nhập MODEL CODE trên sheet HOME thì bên sheet DATA sẽ hiện chỉ hiện thông tin của CODE đó,( Như file đính kèm minh họa).
Em muốn nó auto hơn, không copy/paste nữa vì RAWDATA lớn.
Nhờ anh chị xem có phương án VBA, hay câu lệnh nào nào giúp em với.
Em xin cảm ơn.
Bạn thử với code này !. Sao cái sheet Home và sheet Data gộp lại làm 1 cho dễ nhìn nhỉ ?
Mã:
Sub TrichLoc()
Dim k As Long, i As Long, aDuLieu(), DieuKien, aKetQua(1 To 60000, 1 To 7)
 DieuKien = Sheets("HOME").Range("B2").Value
    With Sheets("RAW DATA")
      aDuLieu = .Range("A2", .[A65536].End(3)).Resize(, 7).Value
    End With
      For i = 1 To UBound(aDuLieu)
         If aDuLieu(i, 7) = DieuKien Then
            k = k + 1
            For j = 1 To 7
             aKetQua(k, j) = aDuLieu(i, j)
            Next
         End If
      Next
With Sheets("DATA")
    .[A2:G10000].ClearContents
    If k Then .[A2].Resize(k, 7) = aKetQua
End With

End Sub
 

File đính kèm

Upvote 0
Cảm ơn bạn, File sắp tới của mình nó nhiều dữ liệu phân tích nên mình thêm sheet HOME để link up cho dễ tìm.
Nếu có nhiều hơn dữ liệu đã khai báo thì sửa lại code sau
Mã:
Sub TrichLoc()
Dim k As Long, i As Long, aDuLieu(), DieuKien, aKetQua
 DieuKien = Sheets("HOME").Range("B2").Value
    With Sheets("RAW DATA")
     aDuLieu = .Range("A2:G" & .Cells(.Rows.Count, "A").End(xlUp).Row).Value
    End With
    ReDim aKetQua(1 To UBound(aDuLieu), 1 To 7)
      For i = 1 To UBound(aDuLieu)
         If aDuLieu(i, 7) = DieuKien Then
            k = k + 1
            For j = 1 To 7
             aKetQua(k, j) = aDuLieu(i, j)
            Next
         End If
      Next
With Sheets("DATA")
    .Range("A2:G" & .Cells(.Rows.Count, "A").End(xlUp).Row).ClearContents
    If k Then .Range("A2").Resize(k, 7) = aKetQua
End With
End Sub
 
Upvote 0
Nếu có nhiều hơn dữ liệu đã khai báo thì sửa lại code sau
Chào bạn,
Cho mình hỏi chút.
mình muốn thêm 1 điều kiện lọc theo Tháng ở sheet Home => Lọc dữ liệu theo 2 điều kiện khác nhau sang sheet khác.
Nhờ bạn xem có phương án VBA, hay câu lệnh nào nào giúp mình với.
Xin cảm ơn.
 

File đính kèm

Upvote 0
Chào bạn,
Cho mình hỏi chút.
mình muốn thêm 1 điều kiện lọc theo Tháng ở sheet Home => Lọc dữ liệu theo 2 điều kiện khác nhau sang sheet khác.
Nhờ bạn xem có phương án VBA, hay câu lệnh nào nào giúp mình với.
Xin cảm ơn.
Thử sử dụng File.
- Để lọc MODEL CODE: Vào G2 chọn và nhấn nút.
- Để lọc cùng lúc 2 thứ vào F2 và G2 chọn và nhấn nút.
 

File đính kèm

Upvote 0
Web KT

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

Back
Top Bottom