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
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)