GIúp sửa code để lấy dữ liệu file đang mở vài file đang đóng

Liên hệ QC

hondacrv2019

Thành viên bị đình chỉ hoạt động
Thành viên bị đình chỉ hoạt động
Tham gia
19/5/19
Bài viết
116
Được thích
9
Chào cả nhà. Chúc cả nhà Rực rỡ
Tình hình là em đang dùng code này của bác hailuamientay để lấy dử liệu từ nhiều file đóng vào file đang mở. code chạy khá là nhanh
Mã:
Sub LayDL_HLMT()
    Dim strSQL As String
    strSQL = "Select * from [excel 12.0;database=" & Sheet1.Range("I3") & "].[Sheet1$A1:E10] " & _
             "Union all Select * from [excel 12.0;database=" & Sheet1.Range("I4") & "].[Sheet1$A1:E10] " & _
             "Union all Select * from [excel 12.0;database=" & Sheet1.Range("I5") & "].[Sheet1$A1:E10] "
    With CreateObject("ADODB.Connection")
        .Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName & ";Extended Properties=Excel 12.0"
        Sheet1.Range("A2:E100").ClearContents
        Sheet1.Range("A2").CopyFromRecordset .Execute(strSQL)
    End With
 
End Sub

Bây giờ thì em muốn ngược lại. Tức là lấy dữ liệu file đang mở đưa vào file đang đóng. Ví dụ em muốn copy vùng dữ liệu A1:D100 của file em đang mở hiện hàng sang File đang đóng ví dụ có tên Data.xlsb tại sheet1 chẳng hạn
Mong các bác hổ trợ. em xin cảm ơn nhiều
 
Chào cả nhà. Chúc cả nhà Rực rỡ
Tình hình là em đang dùng code này của bác hailuamientay để lấy dử liệu từ nhiều file đóng vào file đang mở. code chạy khá là nhanh
Mã:
Sub LayDL_HLMT()
    Dim strSQL As String
    strSQL = "Select * from [excel 12.0;database=" & Sheet1.Range("I3") & "].[Sheet1$A1:E10] " & _
             "Union all Select * from [excel 12.0;database=" & Sheet1.Range("I4") & "].[Sheet1$A1:E10] " & _
             "Union all Select * from [excel 12.0;database=" & Sheet1.Range("I5") & "].[Sheet1$A1:E10] "
    With CreateObject("ADODB.Connection")
        .Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName & ";Extended Properties=Excel 12.0"
        Sheet1.Range("A2:E100").ClearContents
        Sheet1.Range("A2").CopyFromRecordset .Execute(strSQL)
    End With

End Sub

Bây giờ thì em muốn ngược lại. Tức là lấy dữ liệu file đang mở đưa vào file đang đóng. Ví dụ em muốn copy vùng dữ liệu A1:D100 của file em đang mở hiện hàng sang File đang đóng ví dụ có tên Data.xlsb tại sheet1 chẳng hạn
Mong các bác hổ trợ. em xin cảm ơn nhiều
File đang mở thì lấy dữ liệu bằng lệnh VBA bình thường, còn ghi dữ liệu vào file đóng thì dùng ADO với SQL: lệnh INSERT INTO ......
Cứ thế có thể được.
 
Upvote 0
Web KT

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

Back
Top Bottom