CODE VBA LẤY DỮ LIỆU THEO CODE ID

Liên hệ QC

Nguyentu95

Thành viên mới
Tham gia
31/12/18
Bài viết
9
Được thích
1
Gửi lời chào năm mới thịnh vượng tới tất cả!
- Xin cao nhân cho giúp code VBA để thực hiện lấy dữ liệu giữa các sheet, và các file theo code id
File và mô tả kết quả output em ghi rõ trong file!
Đa tạ các cao nhân & xin trợ giúp!
 

File đính kèm

  • FILE GOC.xlsx
    13.3 KB · Đọc: 10
  • FILE INPUT.xlsx
    10.7 KB · Đọc: 9
Gửi lời chào năm mới thịnh vượng tới tất cả!
- Xin cao nhân cho giúp code VBA để thực hiện lấy dữ liệu giữa các sheet, và các file theo code id
File và mô tả kết quả output em ghi rõ trong file!
Đa tạ các cao nhân & xin trợ giúp!
Bạn dùng tạm code sau nhé:

Mã:
Sub CapNhatDL_HLMT()
    Dim strSQL As String
    strSQL = "Select F9,F3 from [KL1$A7:M16] " & _
             "Union all Select F9,F3 from [KL2$A7:M16] " & _
             "Union all select F9,F3 from [EXCEL 12.0;HDR=NO;Database=" & ThisWorkbook.Path & "\FILE INPUT.XLSX].[KL1$A7:I16] " & _
             "Union all select F9,F3 from [EXCEL 12.0;HDR=NO;Database=" & ThisWorkbook.Path & "\FILE INPUT.XLSX].[KL2$A7:I16] "
    strSQL = "Select F9 as [CodeNo], Sum(F3) as KhoiLuong from (" & strSQL & ") Group By F9"
    strSQL = "Select CodeNo,KhoiLuong,F4 as Gia from (" & strSQL & ") A  INNER JOIN [EXCEL 12.0;HDR=NO;Database=" & ThisWorkbook.Path & "\FILE INPUT.XLSX].[KL1$A7:I16] B ON A.CodeNo=B.F9"
    With CreateObject("ADODB.Connection")
        .Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName & ";Extended Properties=""Excel 12.0;HDR=NO"""
        Sheet1.Range("CO2").CopyFromRecordset .Execute(strSQL)
        .Execute ("Update [CAU TAO GIA$A2:N11] a inner join [CAU TAO GIA$CO2:CQ20] B on a.F8=b.F1 set a.F7=B.F2, a.F14=b.F3 ")
        Sheet1.Range("CO2:CQ20").ClearContents
    End With
End Sub
 
Upvote 0
Web KT
Back
Top Bottom