Tính tổng cho từng dòng đơn vị

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

Eric.Shen

Thành viên chính thức
Tham gia
26/1/23
Bài viết
74
Được thích
9
Chào các anh/chị,
Hiện tại em đang có một bài toán cần phải thêm một dòng tính tổng cho từng đơn vị "Item",
đề bài ở sheet 1, em muốn thêm các dòng tổng ở dưới như sheet 2 và thêm 1 cột tính tổng toàn bộ cho item đó
Anh/chị viết giúp em một đoạn code với ạ
Em cảm ơn nhiều ạ!
 

File đính kèm

  • Book1.xlsb
    10.2 KB · Đọc: 17
Chào các anh/chị,
Hiện tại em đang có một bài toán cần phải thêm một dòng tính tổng cho từng đơn vị "Item",
đề bài ở sheet 1, em muốn thêm các dòng tổng ở dưới như sheet 2 và thêm 1 cột tính tổng toàn bộ cho item đó
Anh/chị viết giúp em một đoạn code với ạ
Em cảm ơn nhiều ạ!
Bạn thử tham khảo. .
 

File đính kèm

  • Book1.xlsb
    23.1 KB · Đọc: 19
Upvote 0
Chào các anh/chị,
Hiện tại em đang có một bài toán cần phải thêm một dòng tính tổng cho từng đơn vị "Item",
đề bài ở sheet 1, em muốn thêm các dòng tổng ở dưới như sheet 2 và thêm 1 cột tính tổng toàn bộ cho item đó
Anh/chị viết giúp em một đoạn code với ạ
Em cảm ơn nhiều ạ!
Góp vui:
Bạn tham khảo code sau được macro ghi lại và chỉnh sửa lại.
Mã:
Option Explicit

Sub Loc()
Dim Lr&, i&, Lr1&, Lr2&, Lr3&
Dim Key As String
Dim Sh As Worksheet, Ws As Worksheet

Application.ScreenUpdating = False

Set Sh = Sheets("Data")
'Sh.Select
'Selection.AutoFilter
Lr = Sh.Cells(Rows.Count, "A").End(xlUp).Row + 1
    Sh.Range("A3:A" & Lr - 1).Copy Sheets("KQ").Range("R1")
    Sh.Range("C" & Lr) = "Total"
    Sh.Range("D" & Lr & " :F" & Lr).FormulaR1C1 = "=SUBTOTAL(9,R[-" & Lr - 3 & "]C:R[-1]C)"
    Sh.Range("G" & Lr).FormulaR1C1 = "=SUM(RC[-3]:RC[-1])"
Set Ws = Sheets("KQ")
Lr1 = Ws.Cells(Rows.Count, "R").End(xlUp).Row
    Ws.Range("R1:R" & Lr1).RemoveDuplicates Columns:=1, Header:=xlNo
Lr2 = Ws.Cells(Rows.Count, "R").End(xlUp).Row
    Ws.Range("I3:O10000").ClearContents
For i = 1 To Lr2
    Key = Ws.Range("R" & i): Lr3 = Ws.Cells(Rows.Count, "O").End(xlUp).Row
    Sh.Range("A2").AutoFilter
    Sh.Range("A2:F" & Lr - 1).AutoFilter Field:=1, Criteria1:=Key
    Sh.Range("A3:G" & Lr).Copy
    Ws.Range("I" & Lr3 + 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone
Next i
    Sheets("Data").Select
    Selection.AutoFilter
    Sh.Range("C" & Lr & " :G" & Lr).ClearContents
Application.ScreenUpdating = True

MsgBox "Done"
End Sub
Hãy nhấn vào mũi tên để xem kết quả ở I3/Sheet KQ
 

File đính kèm

  • Book1.xlsb
    22.2 KB · Đọc: 17
Upvote 0
Kết quả đúng rồi bác ạ
Em cảm ơn bác rất nhiều
Bài đã được tự động gộp:

Góp vui:
Bạn tham khảo code sau được macro ghi lại và chỉnh sửa lại.
Mã:
Option Explicit

Sub Loc()
Dim Lr&, i&, Lr1&, Lr2&, Lr3&
Dim Key As String
Dim Sh As Worksheet, Ws As Worksheet

Application.ScreenUpdating = False

Set Sh = Sheets("Data")
'Sh.Select
'Selection.AutoFilter
Lr = Sh.Cells(Rows.Count, "A").End(xlUp).Row + 1
    Sh.Range("A3:A" & Lr - 1).Copy Sheets("KQ").Range("R1")
    Sh.Range("C" & Lr) = "Total"
    Sh.Range("D" & Lr & " :F" & Lr).FormulaR1C1 = "=SUBTOTAL(9,R[-" & Lr - 3 & "]C:R[-1]C)"
    Sh.Range("G" & Lr).FormulaR1C1 = "=SUM(RC[-3]:RC[-1])"
Set Ws = Sheets("KQ")
Lr1 = Ws.Cells(Rows.Count, "R").End(xlUp).Row
    Ws.Range("R1:R" & Lr1).RemoveDuplicates Columns:=1, Header:=xlNo
Lr2 = Ws.Cells(Rows.Count, "R").End(xlUp).Row
    Ws.Range("I3:O10000").ClearContents
For i = 1 To Lr2
    Key = Ws.Range("R" & i): Lr3 = Ws.Cells(Rows.Count, "O").End(xlUp).Row
    Sh.Range("A2").AutoFilter
    Sh.Range("A2:F" & Lr - 1).AutoFilter Field:=1, Criteria1:=Key
    Sh.Range("A3:G" & Lr).Copy
    Ws.Range("I" & Lr3 + 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone
Next i
    Sheets("Data").Select
    Selection.AutoFilter
    Sh.Range("C" & Lr & " :G" & Lr).ClearContents
Application.ScreenUpdating = True

MsgBox "Done"
End Sub
Hãy nhấn vào mũi tên để xem kết quả ở I3/Sheet KQ
Cảm ơn bác nhiều ạ, em thấy kết quả đúng rồi
 
Upvote 0
Chào các anh/chị,
Hiện tại em đang có một bài toán cần phải thêm một dòng tính tổng cho từng đơn vị "Item",
đề bài ở sheet 1, em muốn thêm các dòng tổng ở dưới như sheet 2 và thêm 1 cột tính tổng toàn bộ cho item đó
Anh/chị viết giúp em một đoạn code với ạ
Em cảm ơn nhiều ạ!
TRONG EXCEL CÓ SẴN SUBTOTAL
1681658477536.png
 
Upvote 0
Web KT

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

Back
Top Bottom