Gộp ma_tt theo tháng nợ

Liên hệ QC

King_cobra

Thành viên mới
Tham gia
30/3/22
Bài viết
19
Được thích
0
Nhờ các anh chị hướng dẫn.
Tôi có 1 file chi tiết (gửi kèm) gồm các trường: STT, MA_TT, MA_TB, THANG_NO, TIEN_NO, TIEN_TRA, CON_NO
Trong đó 1 MA__TT có nhiều MA_TB và nhiều THANG_NO.
Tôi muốn gom vào thành 1 file gồm các trường MA_TT, THANG_NO, TIEN_NO, TIEN_TRA, CON_NO trong đó 1 MA_TT sẽ gồm nhiều THANG_NO với TIEN_NO, TIEN_TRA, CON_NO là tổng của các MA_TB
Hiện chưa biết là dùng hàm hay dùng VBA nên tôi chưa đưa vào đúng topic, mong Admin duyệt bài
 

File đính kèm

  • Test.xlsx
    12.6 KB · Đọc: 8
Nhờ các anh chị hướng dẫn.
Tôi có 1 file chi tiết (gửi kèm) gồm các trường: STT, MA_TT, MA_TB, THANG_NO, TIEN_NO, TIEN_TRA, CON_NO
Trong đó 1 MA__TT có nhiều MA_TB và nhiều THANG_NO.
Tôi muốn gom vào thành 1 file gồm các trường MA_TT, THANG_NO, TIEN_NO, TIEN_TRA, CON_NO trong đó 1 MA_TT sẽ gồm nhiều THANG_NO với TIEN_NO, TIEN_TRA, CON_NO là tổng của các MA_TB
Hiện chưa biết là dùng hàm hay dùng VBA nên tôi chưa đưa vào đúng topic, mong Admin duyệt bài
Bạn thử dùng pivot table xem thế nào.
Chi tiết hơn thì bạn thêm kết quả mong muốn (một số dòng) xem thế nào.
 
Bạn thử dùng pivot table xem thế nào.
Chi tiết hơn thì bạn thêm kết quả mong muốn (một số dòng) xem thế nào.
Mình đã dùng Pivot table nhưng như thế sẽ thành 1 dòng MA_TT và dưới đó sẽ là các dòng THANG_NO. Mình lại muốn là mỗi MA_TT có bao nhiêu THANG_NO sẽ có bấy nhiêu dòng
 
Mình đã dùng Pivot table nhưng như thế sẽ thành 1 dòng MA_TT và dưới đó sẽ là các dòng THANG_NO. Mình lại muốn là mỗi MA_TT có bao nhiêu THANG_NO sẽ có bấy nhiêu dòng
Bạn làm 1 sheet mô tả thử kết quả xem thử nhé.
Kiểu thể này à?

1652945334169.png
 
Lần chỉnh sửa cuối:
Đây là file tôi làm thử. Sheet3 là Pivot table, sheet2 là kết quả mong muốn. Dữ liệu của tôi khoảng 25k đến 60k dòng
 

File đính kèm

  • Test.xlsx
    22 KB · Đọc: 4
Đây là file tôi làm thử. Sheet3 là Pivot table, sheet2 là kết quả mong muốn. Dữ liệu của tôi khoảng 25k đến 60k dòng
Cái MA_TB của bạn nó gộp theo quy luật nào vậy bạn? Tôi thấy bạn miêu tả nó không theo quy luật nào cả.
 
Thế này à bạn?
Nếu thế này pivot làm được mà.

View attachment 276159
Thế này thì 1 MA_TB có nhiều THANG_NO sẽ xuất hiện tổng SL THANG_NO+1 dòng
Mình sẽ phải lọc lại lần nữa cũng rất mất công
Bài đã được tự động gộp:

Tổng của bạn là 789.175.246, nhưng thực tế tôi cộng nó phải là 788.480.319. Vậy số nào đúng vậy bạn?
Có thể trong lúc cộng tay tôi đã bị lỗi ở đâu đó, nhưng về bản chất thì số phải khớp.
 
Thế này thì 1 MA_TB có nhiều THANG_NO sẽ xuất hiện tổng SL THANG_NO+1 dòng
Mình sẽ phải lọc lại lần nữa cũng rất mất công
Bài đã được tự động gộp:


Có thể trong lúc cộng tay tôi đã bị lỗi ở đâu đó, nhưng về bản chất thì số phải khớp.
Tôi không hiểu ý bạn. Bạn muốn thêm 1 dòng total cho mỗi mã à?

Trong sheet kết quả mong muốn làm gì thấy đâu?
 
Chắc là do cộng tay bị sai
Tôi chỉ muốn xác nhận lại cho đúng. Bạn dùng code sau nhé:
Mã:
Sub Cong_HLMT()
    With CreateObject("ADODB.Connection")
        .Open ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName & ";Extended Properties=Excel 12.0")
        Sheet3.Range("I2").CopyFromRecordset .Execute("Select MA_TT,First(MA_TB),THANG_NO,SUM(TIEN_NO),SUM(TIEN_TRA),SUM(CON_NO) From [Sheet1$] Group By MA_TT,THANG_NO")
    End With
End Sub
 
Tôi không hiểu ý bạn. Bạn muốn thêm 1 dòng total cho mỗi mã à?

Trong sheet kết quả mong muốn làm gì thấy đâu?
PivotTable của bạn chưa đúng theo yêu cầu. Bởi vì không gộp cột MA_TB. Cột này chỉ lấy 1 dữ liệu trong nhóm.
 
Tôi không hiểu ý bạn. Bạn muốn thêm 1 dòng total cho mỗi mã à?

Trong sheet kết quả mong muốn làm gì thấy đâu?
Nhưng trong file bạn gửi lại có thêm 1 dòng, khác với kết quả mong muốn
Bài đã được tự động gộp:

Tôi chỉ muốn xác nhận lại cho đúng. Bạn dùng code sau nhé:
Mã:
Sub Cong_HLMT()
    With CreateObject("ADODB.Connection")
        .Open ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName & ";Extended Properties=Excel 12.0")
        Sheet3.Range("I2").CopyFromRecordset .Execute("Select MA_TT,First(MA_TB),THANG_NO,SUM(TIEN_NO),SUM(TIEN_TRA),SUM(CON_NO) From [Sheet1$] Group By MA_TT,THANG_NO")
    End With
End Sub
Quá tuyệt vời, cám ơn bạn rất nhiều. Mình sẽ thử với dữ liệu thật và báo lại kết quả.
 
Nhưng trong file bạn gửi lại có thêm 1 dòng, khác với kết quả mong muốn
Bài đã được tự động gộp:


Quá tuyệt vời, cám ơn bạn rất nhiều. Mình sẽ thử với dữ liệu thật và báo lại kết quả.
Sau khi chạy 1 lần thì lần sau tôi chạy lại bị báo lỗi sau
1652949651862.png
 
Web KT
Back
Top Bottom