编写 VBA 代码以从 Excel 连接到 SQL Server 2005 的最佳方法是什么?
excel文件的用户可能运行XP、Vista、Win7,我想尽可能阻止驱动程序安装。
我的理解是XP使用MDAC,而Vista/Win7使用DAC。这是否意味着对 MDAC 2.8 的引用在 Vista 计算机上不起作用,反之亦然?
如果我不添加引用并使用后期绑定,例如,我的 VBA 代码是否可以在两者上工作? CreateObject("ADODB.Connection")?
我使用 MS ADO 2.0(在我的工作站上找到的最旧版本,将其添加为参考)完成了此操作。它可以在我尝试过的所有电脑上运行,你只需要启用宏(这根本不是好消息)
Dim dbConnection As ADODB.Connection
Dim connStr As String
'Recordset variables
Dim rsData As ADODB.Recordset
Dim sql As String
connStr = "Provider=SQLOLEDB;" & _
"Data Source=MyServer\MyInstance;" & _
"Initial Catalog=MyDatabase;" & _
"Integrated Security=SSPI;" & _
"Application Name=MyExcelFile"
Set dbConnection = New ADODB.Connection
dbConnection.ConnectionString = connStr
dbConnection.Open
Set rsData = New ADODB.Recordset
rsData.Open "SELECT field FROM table", dbConnection
Dim field as String
Do While Not rsData.EOF
'this is where each row will be processed
field = rsData.Fields(0).Value
'do what's needed with field
rsData.MoveNext
Loop
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)