VBA 连接Access数据库和Excle
·
VBA 连接数据库步骤:
1.创建连接对象
2.打开连接
3.执行SQL
4.关闭连接
5.释放连接对象
前提:在【工具】>【引用】ADO库
Sub conDatabase()
Dim con As ADODB.Connection '声明对象变量
Set con = New ADODB.Connection '创建对象变量
'Dim con As New ADODB.Connection ’这一行等效于以上两行
'建立数据库连接
'con.Open "provider=microsoft.ace.oledb.12.0;data source =" & ThisWorkbook.Path & "\test.accdb" '连接access数据库
'con.Open "provider=microsoft.ace.oledb.12.0;extended properties=excel 12.0;data source =" & _
ThisWorkbook.Path & "\数据.xlsx"
'以下写法等效于 con.Open
With con
.Provider = "microsoft.ace.oledb.12.0"
.ConnectionString = ThisWorkbook.Path & "\test.accdb"
.Open
End With
MsgBox "连接成功"
Dim sql As String
'sql = "insert into check(code,year,month,day) values ('1','2022','1','1')"
sql = "insert into m_check(m_code,m_year,m_month,m_day) values (3,2022,1,1)"
con.Execute (sql)
con.Close '关闭连接
Set con = Nothing '释放变量
End Sub
注意事项:
1. 创建连接的两种写法
Dim con As ADODB.Connection '声明对象变量 Set con = New ADODB.Connection '创建对象变量Dim con As New ADODB.Connection ’这一行等效于以上两行2.两种写法打开连接
con.Open "provider=microsoft.ace.oledb.12.0;data source =" & ThisWorkbook.Path & "\test.accdb" '连接access数据库With con .Provider = "microsoft.ace.oledb.12.0" .ConnectionString = ThisWorkbook.Path & "\test.accdb" .Open End With
VBA使用SQL操作Excel,方法和上面连接Access操作相似只需将连接字符串更改成下面这种:
con.Open "provider=microsoft.ace.oledb.12.0;extended properties=excel 12.0;data source =" & _ ThisWorkbook.Path & "\数据.xlsx"
更多推荐



所有评论(0)