Yeuvoyeucon
Thành viên hoạt động
- Tham gia
- 30/10/09
- Bài viết
- 143
- Được thích
- 23
Kính gửi Anh Chị,
Em có đoạn code thực hiện Copy dữ liệu từ các File và một File. Tuy nhiên kết quả nó ra cái đúng cái sau, cái thiếu...Em đã kiểm tra đảm bảo form của các File đống nhất. Có điều, vùng copy ở các File là dữ liệu có các công thức, sợ code Copy không hiểu và không được. Code này sửa thế nào để nó copy và paste value vào File Tong hop ạ.
Sub Group()
Dim Fso As Object, sPath As String, oFile As Object, i As Long
Set Fso = CreateObject("Scripting.FileSystemObject")
sPath = Fso.GetParentFolderName(ThisWorkbook.FullName)
Sheets("Tonghop").Range("B3:G1000").ClearContents
With CreateObject("ADODB.Connection")
For Each oFile In Fso.GetFolder(sPath).Files
If oFile.Name <> ThisWorkbook.Name And Left(oFile.Name, 1) <> "~" And Fso.GetExtensionName(oFile) Like "xls*" Then
.Open "Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties=""Excel 12.0;HDR=No"";Data Source=" & Fso.GetAbsolutePathName(oFile)
Sheet1.Range("B" & 3 + i).CopyFromRecordset .Execute("Select * from [KETQUA$B2:H14]")
i = i + 13
.Close
End If
Next
End With
End Sub
Em có đoạn code thực hiện Copy dữ liệu từ các File và một File. Tuy nhiên kết quả nó ra cái đúng cái sau, cái thiếu...Em đã kiểm tra đảm bảo form của các File đống nhất. Có điều, vùng copy ở các File là dữ liệu có các công thức, sợ code Copy không hiểu và không được. Code này sửa thế nào để nó copy và paste value vào File Tong hop ạ.
Sub Group()
Dim Fso As Object, sPath As String, oFile As Object, i As Long
Set Fso = CreateObject("Scripting.FileSystemObject")
sPath = Fso.GetParentFolderName(ThisWorkbook.FullName)
Sheets("Tonghop").Range("B3:G1000").ClearContents
With CreateObject("ADODB.Connection")
For Each oFile In Fso.GetFolder(sPath).Files
If oFile.Name <> ThisWorkbook.Name And Left(oFile.Name, 1) <> "~" And Fso.GetExtensionName(oFile) Like "xls*" Then
.Open "Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties=""Excel 12.0;HDR=No"";Data Source=" & Fso.GetAbsolutePathName(oFile)
Sheet1.Range("B" & 3 + i).CopyFromRecordset .Execute("Select * from [KETQUA$B2:H14]")
i = i + 13
.Close
End If
Next
End With
End Sub