|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
本帖最后由 xyd617 于 2018-8-3 11:26 编辑
请教下大神,这个神代码调试出现问题。
1、运行未出错,但提取不到数据。
2、ARR数组行号数确定,列号不确定,列号根据遍历工作簿的数字确定。如何处理?动态数组怎么处理.
3、实现效果,在TT核对工作簿,对文件夹下指定工作簿横向合并,用SQL实现。
Sub hd6() '????
Dim cnn As Object
Dim Sql As String, myf, ARR(1 To 165, 1 To 4, M%'这个4会根据遍历工作簿的数量变动
Set cnn = CreateObject("ADODB.CONNECTION")
myf = Dir(ThisWorkbook.Path & "\*.xls")
Do While myf <> "" And myf <> ThisWorkbook.Name
cnn.Open "Provider=Microsoft.ACE.OleDb.12.0;Extended Properties='Excel 12.0;HDR=NO'; Data Source=" & ThisWorkbook.Path & "\" & myf
Sql = "select * from [TT.TT006$b7:b170]"
M = M + 1
ARR(1, M) = Replace(myf, ".xls", "")
For n = 2 To 165
ARR(n, M) = cnn.Execute(Sql)(0)
Next n
cnn.Close
myf = Dir()
Loop
Sheets("TT.TT006").Range("b2:b1000") = ""
Sheets("TT.TT006").Range("b2").Resize(165, M) = ARR
Set cnn = Nothing
End Sub
|
|