1 '點擊「工具」->「引用」添加如下引用: 2 'Microsoft ActiveX Data Objects 2.8 Libary 3 'Microsoft ActiveX Data Objects Records 2.8 Libary 4 'Microsoft ADO Ext.2.8 For Dll and Security 5 'Microsoft Forms 2.0 Object Libary 6 Public cat As New ADOX.Catalog 7 Public Conn As New ADODB.Connection '定義對象鏈接數據庫信息
8 Public rs As New ADODB.Recordset '定義set
9 Public Strsql As String '定義sql語句字符串 10 11 '打開數據庫鏈接 12 Public Sub OpenSql() 13 If Conn.State = 1 Then Conn.Close 14 If Conn.State = 0 Then 15 Conn.Open "provider=sqloledb;server=數據庫所在IP地址(能夠是公網IP,前提是作好映射);database=數據庫實例名稱;uid=數據庫登陸用戶(默認是sa);pwd=密碼;" 16 End If 17 End Sub 18 19 '關閉數據庫鏈接 20 Public Sub CloseConn() 21 If rs.State = 1 Then rs.Close 22 Conn.Close 23 End Sub 24 25 'sql_query語句 建議直接在數據庫中寫好過程 調用的時候方便調用 26 Public Sub SelectView(sku As String) '表示有參過程 27 Strsql = "p_SelectView '" & sku & "'" '過程前面能夠選加 execute/exec 不加也能夠 28 OpenSql '打開鏈接 29 rs.Open Strsql, Conn '使用鏈接 30 Worksheets("sys").Cells.Clear '刪除原sys表中數據 31 Dim i As Integer '寫入字段標題 下標從0開始 32 For i = 0 To rs.Fields.Count - 1 33 Worksheets("sys").Cells(1, i + 1).Value = rs.Fields(i).Name 34 Next i 35 Worksheets("sys").Cells(2, 1).CopyFromRecordset rs '粘貼查詢結果:特別注意 若是過程裏面不只有查詢語句還有不少其它運算和操做,記得應用 set nocount on 和 set nocount off,否則會報錯 36 CloseConn '關閉鏈接 37 End Sub