EXCELvba写入ACCESS数据库表

EXCELvba写入ACCESS数据库表,第1张

第一步:连接数据,下面是参考代码

Set conn = CreateObject("ADODB.Connection")

conn.ConnectionString = "Provider=Microsoft.Ace.OleDB.12.0Data Source=" &mypath

conn.ConnectionString = conn.ConnectionString &"Jet OLEDB:Database Password=1"

conn.Open

第二步:插入数据,参考代码如下:

Sql = "insert into skmxb (内部管理号,收款日期,金额"

Sql = Sql &") values ('" &nbglH &"', #" &Format(myD, "yyyy/mm/dd") &"#,"

Sql = Sql &jE

Sql = Sql &")"

conn.Execute Sql

excel是一个自由表,一个EXCEL的工作薄就是一个数据库,它里面的每一张表就是数据库的表,你可象 *** 作表一样对其进行查询等 *** 作,它里面的列就是数据库的字段,行就是记录,因此你可以按数据库的架构来组建数据,只是你如果你组建的数据不符合数据库的规则,在查询时不能得到时相应的结果。因此在EXCEL中不存在创建数据库。但对存在的数据可以引用。当满足条件A、B、C、D……时引用是可以的,但如果是在EXCEL中直接引用是不行的,一种是用VBA利用ADO访问EXCEL,在查询时把A、B、C、D几个条件按SQL语法写进查询语句中,引用返回的记录集,一种是利用函数把满足A、B、C、D的记录筛选出来,然后再引用。

Sub 把Excel数据插入数据库中()

'*******************************************

'时间:2010-06-28

'作者:bengdeng

'功能:把当前工作表的数据增加到在程序文件同一目录下进销存表数据库中

'注意:要在工具/引用中引用microsoft activex date objects x.x

' 其中x.x为版本号,可能会因为你安装的office的版本不同而不同,本例引用了2.5版

'发布:http://www.excelba.com

'*******************************************

Dim conn As ADODB.Connection

Dim WN As String

Dim TableName As String

Dim sSql As String

Dim tStr As String

'数据库名,请自行修改,路径与当前工作簿在同一目录

WN = "进销存表.mdb"

'数据库的表名与当前工作表名一致

TableName = ActiveSheet.Name

Set conn = New ADODB.Connection

conn.ConnectionString = "Provider=Microsoft.Jet.Oledb.4.0" &_

"Extended Properties=Excel 8.0" &_

"Data Source=" &ThisWorkbook.Path &"\" &ActiveWorkbook.Name

conn.Open

If conn.State = adStateOpen Then

sSql = "Insert Into [DataBase=" &ActiveWorkbook.Path &"\" &WN &"]." &TableName &" Select * From [" &ActiveSheet.Name &"$]"

conn.Execute sSql

MsgBox "成功把数据插入到“" &TableName &"”中!", , "http://excelba.com"

conn.Close

End If

Set conn = Nothing

End Sub


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/10066085.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存