Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel [Microsoft][ODBC驱动程序管理器]未找到数据源名称,也未指定默认驱动程序_Excel_Oracle11g_Ado_Vba - Fatal编程技术网

Excel [Microsoft][ODBC驱动程序管理器]未找到数据源名称,也未指定默认驱动程序

Excel [Microsoft][ODBC驱动程序管理器]未找到数据源名称,也未指定默认驱动程序,excel,oracle11g,ado,vba,Excel,Oracle11g,Ado,Vba,我在excel 2013中的电子表格中编写了一些VBA代码,该代码将连接到Oracle 11g以将一些数据写入其中。我使用以下代码连接远程Oracle服务器: Private Function open_DB(tnsInfo As String, userName As String, pwd As String) As ADODB.Connection Dim conn As ADODB.Connection Dim connStr As String Dim tnsI

我在excel 2013中的电子表格中编写了一些VBA代码,该代码将连接到Oracle 11g以将一些数据写入其中。我使用以下代码连接远程Oracle服务器:

Private Function open_DB(tnsInfo As String, userName As String, pwd As String) As ADODB.Connection
    Dim conn As ADODB.Connection
    Dim connStr As String
    Dim tnsInfoArr As Variant

    tnsInfoArr = getTnsProperty(tnsInfo, ";")

    On Error GoTo Error_Handling
    Set conn = New ADODB.Connection
    'connStr =
    connStr = "Driver={Microsoft ODBC for Oracle}; " & _
                 "CONNECTSTRING=(DESCRIPTION=" & _
                 "(ADDRESS=(PROTOCOL=TCP)" & _
                 "(HOST=" & tnsInfoArr(1) & ")(PORT=" & tnsInfoArr(2) & "))" & _
                 "(CONNECT_DATA=(SERVICE_NAME=" & tnsInfoArr(0) & "))); uid=" & userName & " ;pwd=" & pwd & ";"
    conn.ConnectionString = connStr
    conn.CursorLocation = adUseClient
    conn.Open
    conn.CommandTimeout = 120
    If conn.State = adStateOpen Then
        'MsgBox "connect to Oracle successfully"
        'conn.Close
    End If
    Set open_DB = conn
End Function   
此代码在我的计算机上运行正常,但在我同事的电脑上不工作,在我同事的电脑上显示以下错误消息:
[Microsoft][ODBC驱动程序管理器]未找到数据源名称,也未指定默认驱动程序
ADO错误#:-2147467259

我的同事需要在他的电脑上进行一些配置吗?但我记得我没有在自己的计算机上配置任何东西。
有人能告诉我如何解决这个问题吗?
我的操作系统版本是64位windows 7企业版SP1
我使用的是MS Office 2013 64位版本。

我认为您需要通过ODBC数据源管理(32位/64位)设置用户DSN。还要确保您同事的电脑上有运行代码所需的所有驱动程序

干杯