jDa*_*984 3 oracle excel vba oracleclient
我正在尝试通过Excel连接到Oracle DB.我在我的机器上安装了Oracle的Instant Client,但是在运行此代码时收到此消息:
Sub testing()
Dim myConn As Connection: Set myConn = New Connection
Dim mySet As Recordset: Set mySet = New Recordset
Dim CONNSTRING As String
CONNSTRING = "Driver={Microsoft ODBC for Oracle}; " & _
"CONNECTSTRING=(DESCRIPTION=" & _
"(ADDRESS=(PROTOCOL=TCP)" & _
"(HOST=xxxxxx.xxx.xxxxxxxxxxx.com)(PORT=1524))" & _
"(CONNECT_DATA=(SERVICE_NAME=dev))); uid=xxxxxxx; pwd=xxxxxxxxxxx;"
myConn.Open CONNSTRING
mySet.Open "SELECT * FROM apps.ap_invoice_lines_interface", myConn, adOpenStatic, adLockBatchOptimistic, adCmdTable
Sheet1.Range("A1").CopyFromRecordset mySet
mySet.Close
myConn.Close
End Sub
Run Code Online (Sandbox Code Playgroud)
我得到的信息是
未找到Oracle(tm)客户端和网络组件.这些组件由Oracle Corporation提供,是Oracle 7.3(或更高版本)客户端软件安装的一部分.在安装这些组件之前,您将无法使用此驱动程序
当桌面支持团队安装错误的Oracle客户端时,我经常看到此错误.如果您的应用程序(在本例中为Excel)是32位,那么您还需要使用32位ODBC和32位Oracle客户端.您的操作系统或硬件是64位并不重要.重要的是申请.并且似乎大多数MS Office安装都是32位,即使安装在64位Windows上也是如此.