Sql 尝试关闭记录集或连接时VBA代码执行中断

Sql 尝试关闭记录集或连接时VBA代码执行中断,sql,excel,vba,adodb,Sql,Excel,Vba,Adodb,我尝试使用ADODB将数据从SQL Server获取到我的Excel工作表中。我还激活了“引用”下的“Microsoft ActiveX数据对象2.8库”。我必须承认,我是ADODB的新手 下面的代码启动良好,记录集正确写入Excel工作表。但是,代码在“rs.close”处抛出一个错误,表示“代码执行已中断” 由于此错误消息非常普遍,我自己无法找到任何与此相关的信息 我已经关闭了访问我机器上相同数据库的所有其他程序 Sub Test() Dim con As ADODB.Connection

我尝试使用ADODB将数据从SQL Server获取到我的Excel工作表中。我还激活了“引用”下的“Microsoft ActiveX数据对象2.8库”。我必须承认,我是ADODB的新手

下面的代码启动良好,记录集正确写入Excel工作表。但是,代码在“rs.close”处抛出一个错误,表示“代码执行已中断”

由于此错误消息非常普遍,我自己无法找到任何与此相关的信息

我已经关闭了访问我机器上相同数据库的所有其他程序

Sub Test()

Dim con As ADODB.Connection
Dim conStr As String
Dim SQL As String
Dim rs As Recordset
Dim myWb As Workbook

Set myWb = ThisWorkbook

Set con = New ADODB.Connection
conStr = "Provider=SQLOLEDB;Data Source=*censored*;Initial Catalog=RegMetrics;Trusted_connection=yes;"
con.Open conStr

SQL = "Select * From dbo.fn_Counterparty_RWA()"
Set rs = con.Execute(SQL)
myWb.ActiveSheet.Range("A2").CopyFromRecordset rs

rs.Close
con.Close

End Sub

只需重新启动我的计算机即可解决此问题。

您以前在运行时是否尝试过ctrl-Esc停止代码?如果是这样,请尝试重新启动excel。还可以查看在rs.close to deassign object helps之后添加“set rs=nothing”是否重新启动了我的计算机,现在运行正常。我猜以前的代码中有一个奇怪的开放连接“遗留”。谢谢你,亚历克斯。不知道如何将此标记为已回答…很高兴知道它现在适用于您。