Tính Tổng các nhóm dữ liệu

Liên hệ QC

myanhnet200

Thành viên mới
Tham gia
5/10/11
Bài viết
11
Được thích
0
Mình có file đính kèm cần code VBA để tính tổng sau mỗi nhóm hàng tại vị trí bôi vàng (dòng trống sau mỗi nhóm), cần duyệt từ cell K21 đến lastrow, tính tổng
 

File đính kèm

  • Tinh Tong.xlsx
    17.2 KB · Đọc: 25
Mình có file đính kèm cần code VBA để tính tổng sau mỗi nhóm hàng tại vị trí bôi vàng (dòng trống sau mỗi nhóm), cần duyệt từ cell K21 đến lastrow, tính tổng
Bạn chạy thử code này nhé.
Mã:
Sub tinhtong()
    Dim arr, Tong As Double, i As Long, lr As Long
    lr = Range("A" & Rows.Count).End(xlUp).Row
    If lr < 22 Then Exit Sub
    arr = Range("J22:K" & lr).Value
    For i = 1 To UBound(arr, 1)
        If arr(i, 1) <> Empty Then
           Tong = Tong + arr(i, 2)
        ElseIf Tong <> 0 Then
           arr(i, 2) = Tong
           Tong = 0
        End If
    Next i
    Range("J22:K" & lr).Value = arr
End Sub
 
Upvote 0
Bạn chạy thử code này nhé.
Mã:
Sub tinhtong()
    Dim arr, Tong As Double, i As Long, lr As Long
    lr = Range("A" & Rows.Count).End(xlUp).Row
    If lr < 22 Then Exit Sub
    arr = Range("J22:K" & lr).Value
    For i = 1 To UBound(arr, 1)
        If arr(i, 1) <> Empty Then
           Tong = Tong + arr(i, 2)
        ElseIf Tong <> 0 Then
           arr(i, 2) = Tong
           Tong = 0
        End If
    Next i
    Range("J22:K" & lr).Value = arr
End Sub
Hình nhu bị thiếu tong cuối cùng thì phải
 
Upvote 0
Hình nhu bị thiếu tong cuối cùng thì phải
Theo em hiểu tính dòng cuối cột A vì thế công thêm 1 ở dòng này
Mã:
lr = Range("A" & Rows.Count).End(xlUp).Row + 1

Mã:
Sub tinhtong()
    Dim arr, Tong As Double, i As Long, lr As Long
    lr = Range("A" & Rows.Count).End(xlUp).Row + 1
    If lr < 22 Then Exit Sub
    arr = Range("J22:K" & lr).Value
    For i = 1 To UBound(arr, 1)
        If arr(i, 1) <> Empty Then
           Tong = Tong + arr(i, 2)
        ElseIf Tong <> 0 Then
           arr(i, 2) = Tong
           Tong = 0
        End If
    Next i
    Range("J22:K" & lr).Value = arr
End Sub
 
Upvote 0
Theo em hiểu tính dòng cuối cột A vì thế công thêm 1 ở dòng này
Mã:
lr = Range("A" & Rows.Count).End(xlUp).Row + 1

Mã:
Sub tinhtong()
    Dim arr, Tong As Double, i As Long, lr As Long
    lr = Range("A" & Rows.Count).End(xlUp).Row + 1
    If lr < 22 Then Exit Sub
    arr = Range("J22:K" & lr).Value
    For i = 1 To UBound(arr, 1)
        If arr(i, 1) <> Empty Then
           Tong = Tong + arr(i, 2)
        ElseIf Tong <> 0 Then
           arr(i, 2) = Tong
           Tong = 0
        End If
    Next i
    Range("J22:K" & lr).Value = arr
End Sub
Lúc làm xong mới để ý.
 
Upvote 0
Mình có file đính kèm cần code VBA để tính tổng sau mỗi nhóm hàng tại vị trí bôi vàng (dòng trống sau mỗi nhóm), cần duyệt từ cell K21 đến lastrow, tính tổng
Thử thêm một code tà đạo.
Nếu có dữ liệu mới thì Copy và Paste vào sheet1, xong vào sheet2 nhấn nút để xem kết quả.
 

File đính kèm

  • Tinh Tong.xlsm
    29.7 KB · Đọc: 15
Lần chỉnh sửa cuối:
Upvote 0
Thử thêm một code tà đạo.
Nếu có dữ liệu mới thì Copy và Paste vào sheet1, xong vào sheet2 nhấn nút để xem kết quả.
Cám ơn 2 Pro, mình chạy ổn, nhưng cần định dạng tự động tổng mỗi nhóm theo accouting 2 số sau thập phân và in đậm, thêm chữ "TC" cell bên trái mỗi tổng, kính mong 2 Pro giúp hoàn thiện
 

File đính kèm

  • Tinh Tong.xlsm
    29.4 KB · Đọc: 14
Upvote 0
Xin hỏi có cách nào tính tổng khi dòng tổng ở dòng đầu không ( thay vì dòng cuối như bài trên) ?
 
Upvote 0
Web KT
Back
Top Bottom