Giúp đỡ gộp dữ liệu ở nhiều sheet có cấu trúc khác nhau vào sheet Tổng hợp

Liên hệ QC

babyheomoi

Thành viên thường trực
Tham gia
22/9/13
Bài viết
396
Được thích
91
Mình dạo này phải tổng hợp nhiều báo cáo, tuy nhiên các kiểu dữ liệu khi truy xuất thì không đồng nhất, do đó dẫn đến lọc và copy dữ liệu thủ công hơi cực!
Mình nhờ các anh em hỗ trợ giúp mình việc gộp 1 số cột ở nhiều sheet vào 1 sheet tổng hợp. Mổi sheet có nhiều kiểu data, nhưng mình chỉ lấy 2 -4 cột cần cho file tổng hợp!
Mình gửi file anh em xem thử và giúp đỡ!
Cám ơn anh em trước!
 

File đính kèm

  • Gop du lieu Sheet khac nhau.xlsb
    86.8 KB · Đọc: 36
Mình dạo này phải tổng hợp nhiều báo cáo, tuy nhiên các kiểu dữ liệu khi truy xuất thì không đồng nhất, do đó dẫn đến lọc và copy dữ liệu thủ công hơi cực!
Mình nhờ các anh em hỗ trợ giúp mình việc gộp 1 số cột ở nhiều sheet vào 1 sheet tổng hợp. Mổi sheet có nhiều kiểu data, nhưng mình chỉ lấy 2 -4 cột cần cho file tổng hợp!
Mình gửi file anh em xem thử và giúp đỡ!
Cám ơn anh em trước!
3 cột đầu thì hiểu, nhưng cột đáng dấu không hiểu sẽ lấy từ đâu?

upload_2017-10-8_13-24-9.png
 
Dạ,nghĩa là tự động điền vào, data lấy từ sheet TC sẽ điền chữ Tc, từ sheet Cad sẽ điền Cad đó anh!
 
Anh có thể chỉ em cách lọc advane từ 3 sheet trên giúp em cái ạ!
 
Mình dạo này phải tổng hợp nhiều báo cáo, tuy nhiên các kiểu dữ liệu khi truy xuất thì không đồng nhất, do đó dẫn đến lọc và copy dữ liệu thủ công hơi cực!
Mình nhờ các anh em hỗ trợ giúp mình việc gộp 1 số cột ở nhiều sheet vào 1 sheet tổng hợp. Mổi sheet có nhiều kiểu data, nhưng mình chỉ lấy 2 -4 cột cần cho file tổng hợp!
Mình gửi file anh em xem thử và giúp đỡ!
Cám ơn anh em trước!
Muốn làm cái gì thì nội dung tiêu đề các sheet phải có tên Cell giống nhau, lúc thì CIF lúc thì CIFNO, cái thì TKD cái thì OTACCT ....v..v.......
Nội đọc cái tiêu đề để hiểu nó là cái gì thì cũng đã hoa mắt rồi, chứ nói chi nhìn dữ liệu lộn xộn như canh hẹ.
 
Dạ,nghĩa là tự động điền vào, data lấy từ sheet TC sẽ điền chữ Tc, từ sheet Cad sẽ điền Cad đó anh!
Dùng ADO nhé
Mã:
Sub GopDL_HLMT()
    Dim cn As Object
    Set cn = CreateObject("ADODB.Connection")
    cn.Open ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName & ";Extended Properties=Excel 12.0")
    Sheet4.Range("A2").CopyFromRecordset cn.Execute("Select Cif,[Ten KH],OTACCT, 'TC' as SheetName from [tc$] union all select Cif,[" & Sheet2.[D1] & "] ,Account, 'CAD' as SheetName from [cad$] union all select CifNo,ACNAME ,ACCTNO, 'TD' as SheetName from [td$]")
    
End Sub
 
Muốn làm cái gì thì nội dung tiêu đề các sheet phải có tên Cell giống nhau, lúc thì CIF lúc thì CIFNO, cái thì TKD cái thì OTACCT ....v..v.......
Nội đọc cái tiêu đề để hiểu nó là cái gì thì cũng đã hoa mắt rồi, chứ nói chi nhìn dữ liệu lộn xộn như canh hẹ.
Em cũng muốn lắm anh,nhưng data xuất ra nó tùm lum và không theo quy ước gì hết nên em toàn phải sửa tay.
 
Dùng ADO nhé
Mã:
Sub GopDL_HLMT()
    Dim cn As Object
    Set cn = CreateObject("ADODB.Connection")
    cn.Open ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName & ";Extended Properties=Excel 12.0")
    Sheet4.Range("A2").CopyFromRecordset cn.Execute("Select Cif,[Ten KH],OTACCT, 'TC' as SheetName from [tc$] union all select Cif,[" & Sheet2.[D1] & "] ,Account, 'CAD' as SheetName from [cad$] union all select CifNo,ACNAME ,ACCTNO, 'TD' as SheetName from [td$]")
   
End Sub
Cám ơn bác, em cũng nghiên cứu cách 2 của bác!
 
Dear anh chị
Em đang tập tành vba
Em làm thử như ví dụ mẫu mà không được
Chọn lọc dữ liệu để lấy như bài viết của Bác ba tê
Vậy nhờ anh/ chị giúp em theo cấu trúc của sheet database ạ


Em cám ơn nhiều
 

File đính kèm

  • Ví dụ.xlsm
    48 KB · Đọc: 6
Web KT
Back
Top Bottom