Mình ko biết làm sao mà ko tải được file lên, hay là thành viên mới nên giới hạn dưới 1MB nhỉ? mình copy code lên vậy
Sub TongHop()
Dim cnn As Object, lsSQL As String, lrs As Object
Dim Fso As Object, fn, Link As String, Fname As String
Set Fso = CreateObject("Scripting.FileSystemObject")
Set cnn = CreateObject("ADODB.Connection")
Set lrs = CreateObject("ADODB.Recordset")
'Mo hop thoai chon thu muc
With Application.FileDialog(msoFileDialogFolderPicker)
If .Show = -1 Then
Link = .InitialFileName
Else
MsgBox "Ban da khong chon tong hop", vbInformation, "DHN46 - Thong bao"
Exit Sub
End If
End With
Application.ScreenUpdating = False
'Duyet qua cac thu muc trong Folder
With Fso
For Each fn In .GetFolder(Link).Files
Fname = .BuildPath(Link, fn.Name)
If Fname <> ThisWorkbook.FullName Then
'Tao ket noi CSDL
With cnn
If Val(Application.Version) < 20 Then
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Fname & ";Extended Properties=""Excel 8.0;HDR=No;Imex=1"";"
Else
.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Fname & ";Extended Properties=""Excel 12.0;HDR=No;Imex=1"";"
End If
.Open
End With
'Cau lenh truy van
lsSQL = "SELECT * FROM [T_KE_HK1$A1:AE65536] WHERE F1 in ('TV1')"
lrs.Open lsSQL, cnn, 3, 1
'Xuat ra File
Sheet2.Range("A65536").End(3).Offset(1, 0).CopyFromRecordset lrs
cnn.Close
End If
Next
End With
'Chuyen doi dang Text sang Number
Sheet2.[IV50].Copy
Sheet2.Range("A2", Sheet2.Range("T" & Sheet2.[A65536].End(4).Row)).PasteSpecial xlPasteAll, xlPasteSpecialOperationAdd
Application.ScreenUpdating = True
Set lrs = Nothing
Set cnn = Nothing
End Sub