Lọc dữ liệu theo loại và loại bỏ dữ liệu trống rồi xuất ra 1 bảng khác (2 người xem)

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

yunasaras

Thành viên mới
Tham gia
17/10/09
Bài viết
5
Được thích
0
Chào các ACE, mình hiện tại đang muốn xuất một bảng từ bảng có sẵn(khá đồ sộ) !$@!!, nhưng không biết dùng như thế nào.
Chẳng hạn mình có một danh sách gồm 5 mã hàng x1 đến x5 và danh sách 5 lỗi a, b, c, d, e trong 3 tháng.
Giả sử mình muốn lọc ra danh sách các mã hàng bị lỗi a trong 3 tháng thì như thế nào? **~**
Hiện tại mình chỉ dùng filter để lọc thủ công nhưng rất mất thời gian. Cao thủ nào có cách nhanh hơn xin chỉ giáo. --=0
 

File đính kèm

Đơn giản nhất là sum tất cả lỗi a lại rồi filter là ok thôi mà
 
Upvote 0
nhưng mà trích ra cột lỗi a trong 12 tháng thì làm thế nào? **~**
 
Upvote 0
Đơn giản nhất là sum tất cả lỗi a lại rồi filter là ok thôi mà

Cái yêu cầu của chủ Topic không đơn giản đâu, muốn làm được thì phải như vầy:

- Xếp dữ liệu lỗi a, b, c, d, e chiều dọc theo mã hàng x1 đến x5 và theo tháng, đồng thời loại bỏ các Cell lỗi không có dữ liệu.

- Trích lọc hoặc tách sheet các mã hàng bị lỗi.

Tôi đưa ra giải pháp, bạn suy nghĩ coi có đơn giản không.
 
Lần chỉnh sửa cuối:
Upvote 0
giải pháp gì thế bạn**~**. Bận rộn quá, năm nay đúng xui, hy vọng có giải pháp nào khả thi.
 
Upvote 0
chào các ace, mình hiện tại đang muốn xuất một bảng từ bảng có sẵn(khá đồ sộ) !$@!!, nhưng không biết dùng như thế nào.
Chẳng hạn mình có một danh sách gồm 5 mã hàng x1 đến x5 và danh sách 5 lỗi a, b, c, d, e trong 3 tháng.
giả sử mình muốn lọc ra danh sách các mã hàng bị lỗi a trong 3 tháng thì như thế nào? **~**
hiện tại mình chỉ dùng filter để lọc thủ công nhưng rất mất thời gian. Cao thủ nào có cách nhanh hơn xin chỉ giáo. --=0
không phải cao thủ có được không ?
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
  If Target.Address = "$H$1" Then
  Application.ScreenUpdating = False
    With Sheet2
    .Range("M1").Consolidate Sources:="'data'!R2C1:R16000C16", Function:=xlSum, TopRow:=True, LeftColumn:=True
    .[M1].Value = [A7].Value
    .[M1:R16000].AdvancedFilter 2, [H1:H2], [A7:B7], False
    .[M1:R16000].ClearContents
    End With
  End If
  Application.ScreenUpdating = True
End Sub


Xem file
 

File đính kèm

Upvote 0
không phải cao thủ có được không ?
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
  If Target.Address = "$H$1" Then
  Application.ScreenUpdating = False
    With Sheet2
    .Range("M1").Consolidate Sources:="'data'!R2C1:R16000C16", Function:=xlSum, TopRow:=True, LeftColumn:=True
    .[M1].Value = [A7].Value
    .[M1:R16000].AdvancedFilter 2, [H1:H2], [A7:B7], False
    .[M1:R16000].ClearContents
    End With
  End If
  Application.ScreenUpdating = True
End Sub


Xem file

trời, vậy mà không phải cao thủ nữa là gì, hơn cả mong đợi /-*+/
Làm ơn chỉ mình ý nghĩa từng câu lệnh với, mình mới chỉ tìm hiểu visual basic thôi. -=.,,

Ủa mà sao số liệu bên sheet lọc thấy khác khác thế? nhưng hình như chỉ có 1 tháng.
 
Upvote 0

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

Back
Top Bottom