Dim strconnt As String
Set connt = New ADODB.Connection
Dim rs As Object
Set rs = New ADODB.Recordset
Dim sevip, Db, user, pwd As String
'设服务器地址、所连数据,及登录用户密码
sevip = "****"
Db = "****"
user = "****"
pwd = "****"
strconnt = "DRIVER={Microsoft ODBC for Oracle}Password=appsUser ID=appsData Source=demo" '
connt.ConnectionString = strconnt
connt.Open
End Sub
1、把开excel,点击工具-->宏-->录制新宏 2、点击 数据-->导入外部数据-->新建数据库查询,然后根据向导选择oracle驱动,最后完成向导 3、点停止宏,再点 工具-->宏-->宏... 在对话框里选择刚才录制的宏,点编辑, 这样就可以看到连接字符串了。VBA连接oracle数据库小 'システム共通変数
Public ORA_SE As Object 'Oracleのセッションオブジェクト
Public ORA_DB As Object 'Oracleの接続オブジェクト
'******************************************************************************
' プロシージャ名 : Ora_Connect
' 概要 : Oracle接続
' パラメータ : なし
' 说明 :Oracleへの接続を行う
'******************************************************************************
'Public Sub Ora_Connect()
Public Function Ora_Connect()
Dim rt As Integer
On Error GoTo err
Set ORA_SE = CreateObject("OracleInProcServer.XOraSession")
'Set ORA_DB = ORA_SE.OpenDatabase("数据库连接词", "用户名/密码", 0&)
Set ORA_DB = ORA_SE.OpenDatabase("combcm", "combcm/combcm", 0&)
Exit Function
err:
End Function
'******************************************************************************
' プロシージャ名 : Ora_DisConnect
' 概要 : Oracle切断
' パラメータ : なし
' 说明 : Oracleの切断を行う
'******************************************************************************
'Public Sub Ora_DisConnect()
Public Function Ora_DisConnect()
Set ORA_SE = Nothing
Set ORA_DB = Nothing
End Function
Public Function getData()
'该当なし
If OraDynaset.EOF = True Then
Set OraDynaset = Nothing
Exit Function
Else
'2004/03/06 add rec_cntを2して2行目から书き出す
'rec_cnt = 2
'Do While Not OraDynaset.EOF
'For row_cnt = 0 To OraDynaset.Fields.Count - 1
' Cells(rec_cnt, row_cnt + 1).Value = OraDynaset(row_cnt).Value
'Next row_cnt
'2004/11/26 クリップボードを介した方法でスピードアップ対応。
'从数据库中取出数据
OraDynaset.CopyToClipboard
Cells(2, 1).Select
ActiveSheet.Paste
rec_cnt = OraDynaset.RecordCount
'OraDynaset.DbMoveNext
'rec_cnt = rec_cnt + 1
'Loop
End If
end function
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)