您的位置:首页 > 数据库

VBA连接SQL Server2000数据库

2009-04-23 16:53 811 查看
  最近学习VBA的知识,有点稀里糊涂的感觉。今天下午没什么业务又开始研究了,连上数据库了,以防以后忘了,记录以下。呵呵~~

步骤如下:

① 代码区里的工具⇒参照设定里添加参照。

   Microsoft  ActiveX  Data Objects 2.5 Library

 
②新建一个模块在模块中添加如下代码。
Option Explicit
 
Public cn As New ADODB.Connection
Public Sub cnOpen()
Dim strConn As String
strConn = ""
strConn = strConn & "Provider=SQLOLEDB.1;Persist Security Info=false; User ID=sa;Password=;Initial Catalog=VBAstudy;Data Source=(local);"
If cn Is Nothing Then Set cn = New ADODB.Connection
If cn.State <> adStateClosed Then cn.Close
If cn.State = adStateClosed Then cn.Open strConn
End Sub
 
Public Sub cnClose()
cn.Close
End Sub

③ 在sheet里添加要执行的代码。如下很简单的代码。
Public ds As New ADODB.Recordset
Public Sub getdata()
Dim strSQL As String
Call cnOpen  --调用模块中的数据库连接子程序
strSQL = ""
strSQL = "select * from theme"
Set ds = cn.Execute(strSQL)
Dim i As Integer
For i = 1 To 1000
    Sheet1.Range(Cells(i, 1), Cells(2000, 1)).Value = ds.Fields(0).Value
    Sheet1.Range(Cells(i, 2), Cells(2000, 2)).Value = ds.Fields(1).Value
    ds.MoveNext
Next
Call cnClose   --调用模块中的数据库关闭子程序
End Sub

④点击F5运行即可。(F8单步执行)

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息