Chào các thầy cô ạ
Hiện tại em đang muốn ghép dữ liệu từ những file đang đóng
Kết quả mong muốn như hình
em có sử dụng và chắp vá code của thầy@HieuCD tại topic này nhưng không thành.
Hiện giờ em chỉ có ý tưởng là:
Kích chọn những file đang đóng.
Sau đó tạo ra mảng dữ liệu từ những file đang đóng ấy.
Em có viết thử đoạn này rồi chạy thư nhưng bị lỗi ngay từ đoạn này
Sau đó lọc duy nhất theo Mã và trả lần lượt dữ liệu vào các dòng tương ứng với Mã
Mong các thầy cô chỉ giúp làm thế nào để em tạo được mảng dữ liệu.
Chẳng hạn em chọn 2 file thì sẽ tạo được 2 mảng sArr.
Dữ liệu các file con có thể nhiều hơn cả về số dòng và cột
Em cám ơn nhiều ạ
Hiện tại em đang muốn ghép dữ liệu từ những file đang đóng
Kết quả mong muốn như hình
em có sử dụng và chắp vá code của thầy@HieuCD tại topic này nhưng không thành.
Hiện giờ em chỉ có ý tưởng là:
Kích chọn những file đang đóng.
Sau đó tạo ra mảng dữ liệu từ những file đang đóng ấy.
Em có viết thử đoạn này rồi chạy thư nhưng bị lỗi ngay từ đoạn này
Mã:
Sub XYZ()
Dim sArr(), Arr(), Res(), sh
Dim Dic As Object, iKey$
Dim k&, iR&, n&, i&, j&, sRow&, sCol&, jC&
sFile = Application.GetOpenFilename(FileFilter:="Excel Files (*.xls*),*.xlsx", _
Title:="Select File", MultiSelect:=True)
If VarType(sFile) = vbBoolean Then MsgBox ("Chua chon File du lieu"): Exit Sub
Set cn = CreateObject("adodb.connection")
For Each oFile In sFile
If Val(Application.Version) < 12 Then
cn.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & oFile & ";Extended Properties=""Excel 8.0;HDR=No"";")
Else
cn.Open ("provider=Microsoft.ACE.OLEDB.12.0;data source=" & oFile & ";mode=Read;extended properties=""Excel 12.0;hdr=no"";")
End If
Set rs = cn.Execute("select * from [Data$B4:AAA65000] where f2 is not null")
If Not rs.EOF() Then
sArr = rs.GetRows
End If
Mong các thầy cô chỉ giúp làm thế nào để em tạo được mảng dữ liệu.
Chẳng hạn em chọn 2 file thì sẽ tạo được 2 mảng sArr.
Dữ liệu các file con có thể nhiều hơn cả về số dòng và cột
Em cám ơn nhiều ạ