Sql server 2008 通过ADODB.connection连接到Excel中的SQL Server 2008时出现错误3709

Sql server 2008 通过ADODB.connection连接到Excel中的SQL Server 2008时出现错误3709,sql-server-2008,excel,adodb,vba,Sql Server 2008,Excel,Adodb,Vba,我正试图使用下面的代码在Excel中打开SQL Server上的记录集,但得到一个3709-连接无法用于执行此操作。在此上下文中,它已关闭或无效。错误。我哪里出错了 编辑: 它现在正在工作,我将更新以下代码: 'Declare variables' Set objMyConn = New ADODB.Connection Set objMyRecordset = New ADODB.Recordset Dim strSQL As String 'Open Connect

我正试图使用下面的代码在Excel中打开SQL Server上的记录集,但得到一个
3709-连接无法用于执行此操作。在此上下文中,它已关闭或无效。
错误。我哪里出错了

编辑:

它现在正在工作,我将更新以下代码:

'Declare variables'
    Set objMyConn = New ADODB.Connection
    Set objMyRecordset = New ADODB.Recordset
    Dim strSQL As String

'Open Connection'
    objMyConn.ConnectionString = "Driver={SQL Server};Server=SERVER\SERVER; Database=we_ci_db; Trusted_Connection=Yes"
    objMyConn.Open

'Set and Excecute SQL Command'
    strSQL = "select * from tblUsers"

'Open Recordset'
    Set objMyRecordset.ActiveConnection = objMyConn
    objMyRecordset.Open strSQL

'Copy Data to Excel'
    ActiveSheet.Range("A1").CopyFromRecordset (objMyRecordset)

这不是您需要的连接字符串。应该是这样的:

Provider=sqloledb;Data Source=SERVER\SERVER;Initial Catalog=cs_db;Integrated Security=SSPI;

请参见

Remou为我指出了另一个连接字符串的方向,但我仍然得到了相同的结果。我在谷歌上搜索了一会儿,提出了另一个不同实现的SO问题,结果是:

'Declare variables'
    Set objMyConn = New ADODB.Connection
    Set objMyRecordset = New ADODB.Recordset
    Dim strSQL As String

'Open Connection'
    objMyConn.ConnectionString = "Driver={SQL Server};Server=SERVER\SERVER; Database=we_ci_db; Trusted_Connection=Yes"
    objMyConn.Open

'Set and Excecute SQL Command'
    strSQL = "select * from tblUsers"

'Open Recordset'
    Set objMyRecordset.ActiveConnection = objMyConn
    objMyRecordset.Open strSQL

'Copy Data to Excel'
    ActiveSheet.Range("A1").CopyFromRecordset (objMyRecordset)

我已更新到您指定的字段/值,但仍显示[3709-连接无法用于执行此操作。在此上下文中,连接已关闭或无效。]我看到您具有MS Access,您可以链接到表吗?这是否相关?您不相信您可以链接到表?抱歉,没有正确回答您的评论。我可以通过VBA或手动链接到Access中的表。我不相信支持项与此有关。您是说您使用的连接字符串在MS Access中工作,但在Excel中不工作?字符串本身没有错,我尝试了几种完全不同的组合,但都能工作。这是我没有正确的
rst.open
行。我需要使用其他属性,cnn,adOpenStatic等。。。