VBA链接SQL SERVER 详解

更新时间:2024-05-15 05:18:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

VBA链接SQL SERVER 详解

Sub Database_conn()

Dim strConn As String, strSQL As String Dim conn As ADODB.Connection Dim ds As ADODB.Recordset Dim col As Integer '连接数据库的字符串 strConn = \ID=sa;Password=pwd;Initial Catalog=dbname;Data Source=servername;Connect Timeout=720; \

'查询语句,如果sql语句很长可以用strSQL=strSQL+来连接分成多段的语句,如果语句很短可以只写在一行上。 strSQL = \

strSQL = strSQL + \

Set conn = CreateObject(\ Set ds = CreateObject(\

' Set conn = New ADODB.Connection ' Set ds = New ADODB.Recordset

'打开数据库连接 conn.Open strConn

'该句和数据库连接字符串处的Connect Timeout=720,表示说如果语句运行时间很长,这两句可以延长vba的等待时间,没有这两句,vba往往会报查询超时。

conn.CommandTimeout = 720

With ds

'根据查询语句获得数据 .Open strSQL, conn

'自动控制加入所有列标题 For col = 0 To ds.Fields.Count - 1

'请注意Offset(0, col)中的参数一定要正确,该句表示标题将会写在第一行,从A1单元格开始,如果不想写入标题行,可将下面这句注释掉。

Worksheets(\ Next

'加入所有行数据,该句表示查询结果将会写在第一行,从A1单元格开始,但是由于标题行写在第一行了,所以实际这一行从标题下的一行写入。 Worksheets(\ End With

'关闭数据库连接和清空资源 Set ds = Nothing conn.Close

Set conn = Nothing

End Sub

本文来源:https://www.bwwdw.com/article/wj07.html

Top