Trợ giúp về tính toán Excel sau khi áp dụng bộ lọc
Xin chào,
Tôi có một bảng tính excel với dữ liệu và bộ lọc. Sau khi lọc dữ liệu theo mach, mình tổng hợp Qty bằng hàm Subtotal.
Vấn đề là một số dữ liệu có số thứ tự trùng lặp với thời gian hoạt động và thời hạn khác nhau. Làm cách nào để đưa vào công thức của tôi để nếu có nhiều bản ghi có cùng thứ tự thì chỉ tính một bản ghi. Đây là một ví dụ về dữ liệu.
DỮ LIỆU:
Phần đặt hàng Số lượng Ngày hoạt động đến hạn
A112 234210 12 30 4/1/11
A112 234210 12 60 4/6/11
B023 123000 5 40 4/7/11
C123 111888 6 20 4/10/11
C123 210001 6 100 19/4/11
Tổng số 41
KẾT QUẢ:
Phần đặt hàng Số lượng Ngày hoạt động đến hạn
A112 234210 12 30 4/1/11
B023 123000 5 40 4/7/11
C123 111888 6 20 4/10/11
Tổng cộng 23
Trả lời:
CHÀO,
Được rồi, vì vậy bạn muốn trích xuất các kết hợp duy nhất của Phần và Đơn hàng, sau đó với mỗi hàng được trả về, bạn muốn biết Số lượng, Toán tử và Ngày đến hạn so với lần xuất hiện đầu tiên của kết hợp đó
Thử cái này
1. Chọn các cột bộ phận và thứ tự từ ngày cơ sở, giả sử A1:B6 (Hàng 1 là hàng tiêu đề)
2. Nhấp vào bất kỳ ô trống nào và đi đến Dữ liệu > Lọc Bộ lọc nâng cao > Sao chép sang vị trí khác
3. Trong phạm vi danh sách, chọn A1:B6
4. Để trống phạm vi tiêu chí và trong ô sao chép vào, chọn bất kỳ ô trống nào, chẳng hạn như A10.
5. Chọn hộp chỉ dành cho các bản ghi duy nhất.
6. Khi bạn nhấp vào OK, bạn sẽ có sự kết hợp duy nhất giữa phần và thứ tự, tức là hai cột đầu tiên trong phạm vi kết quả của bạn. Giả sử kết quả đầu ra này xuất hiện trong phạm vi A10:B13. Tiêu đề ở hàng 10
7. Trong ô C10, nhập công thức sau và sao chép xuống
=INDEX($C$2:$C$6,MATCH(1,INDEX(($A$2:$A$6=A11)*($B$2:$B$6=B11),,),0),1)
8. Trong ô D10, nhập công thức sau và sao chép xuống
=INDEX($D$2:$D$6,MATCH(1,INDEX(($A$2:$A$6=A11)*($B$2:$B$6=B11),,),0),1)
9. Trong ô E10, nhập công thức sau và sao chép xuống
=INDEX($E$2:$E$6,MATCH(1,INDEX(($A$2:$A$6=A11)*($B$2:$B$6=B11),,),0),1)
Hi vọng điêu nay co ich.
Trả lời:
Xin chào, >nếu bạn muốn trích xuất dữ liệu của mình trong một Trang tính mới >thì hãy thử mã này.. >
> > >Sub myMacro1() >Dim ws1, ws2 As Worksheet >Dim LRow, r As Long >Dim rC, rP As Range >Đặt ws1 = ActiveSheet >Đặt ws2 = Worksheets.Add(after:=ActiveSheet) >Application.ScreenUpdating = Sai >LRow = ws1.Cells(Rows.Count, "A").End(xlUp).Row >Đặt rC = ws1.Range("A1:E" & LRow) >Đặt rP = ws2.Range("A1 ") >rC.Copy >rP.Paste Special (xlPasteValues) >Application.CutCopyMode = False >ws2.Range("A2:E" & LRow).Chọn >Selection.Sort Header:=xlNo, _ >Key1:=Range( "A2"), Order1:=xlTăng dần >ws2.Range("E2:E" & LRow).Select >Selection.NumberFormat = "mm/dd/yy" >Với ws2 > r = 2 > Do While .Cells(r , 1) <> "" > Thực hiện While .Cells(r, "A") = .Cells(r + 1, "A") > .Range(.Cells(r + 1, "A"), .Cells( r + 1, "E")).Delete > Loop > r = r + 1 > Loop > End With > LRow = ws2.Cells(Rows.Count, "A").End(xlUp).Row > s = 0 > For i = 2 To LRow > s = s + ws2.Cells(i, "B") > Tiếp theo i > Cells(LRow + 1, "B") = s > Application.ScreenUpdating = True >End Sub
Comments
Post a Comment