作者stma (BBS)
看板Office
标题[算表] VBA-SQL 引用问题
时间Sat Jun 9 15:27:42 2018
软体: Excel
版本: 2016
初次尝试ADO SQL,失败收场....
目的是想从 Local Excel 抓取资料库的 sheet1
出现错误为物件定义错误 (请看贴图说明)
请问这该怎麽解呢?
'************贴图说明**************
https: //ppt.cc/fF8LJx
***********************************
'**********Code 如下***************
Sub MySQL_1st()
Const adOpenStatic = 3
Const adLockOptimistic = 3
Const adCmdText = &H1
Set objConnection = CreateObject("ADODB.Connection")
Set objRecordset = CreateObject("ADODB.Recordset")
objConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=C:\Users\Acer\Desktop\excel\SQL\raw\raw_data.xls;" & _
"Extended Properties=""Excel 8.0;HDR=Yes;"";"
objRecordset.Open "Select * FROM [sheet1$]", _
objConnection, adOpenStatic, adLockOptimistic, adCmdText
Do Until objRecordset.EOF
Wscript.Echo objRecordset.Fields.Item("ID")
objRecordset.MoveNext
Loop
End Sub
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.168.88.191
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Office/M.1528529264.A.D21.html
1F:→ soyoso: wscript.echo改为msgbox 06/09 15:39
2F:→ stma: 原本效果是想要读取并写入 Active sheet 06/09 15:49
3F:→ stma: msgbox 只有显示资料在对话框 06/09 15:50
4F:→ stma: 後来发现是Excel 无法使用 Wscript.echo...这... 06/09 15:50
5F:→ soyoso: 要读取写入所在工作表储存格的话,可以range = objrecords 06/09 15:59
6F:→ soyoso: et.fields.item(),可於回圈内设个变数来累加,作为列偏移 06/09 16:00
7F:→ soyoso: 值 06/09 16:00
8F:→ stma: 原来我自己误会 wscrip用法 谢谢~ 在研究看看! 06/09 16:03