这个问题问个一便了
我要把excel的数据上传到数据库,因为excel的数据很多所以我想能不能做一个可以连接ACCESS数据库的导入功能直接可以全部表对表上传,当然EXCEL的项目和ACCESS字段是一样的。哪个高手能告诉我啊,完全解答的我单独给他100分
---------------------------------------------------------------
自动根据excel表来建立access表,并录入数据
1
2Response.Expires=0
3Set conn = Server.CreateObject("ADODB.Connection")
4conn.Open "Driver={Microsoft Excel Driver (*.xls)};ReadOnly=0;DBQ=" & Server.MapPath("你的excel文件.xls")
5
6SQL1="select * from [sheet1$]" 'sheet1为excel文件的表名
7Set rs = Server.CreateObject("ADODB.Recordset")
8rs.Open SQL1, conn, 3, 3
9
10
11curDir = Server.MapPath("你的mdb文件.mdb")
12Set conn1 = Server.CreateObject("ADODB.Connection")
13conn1.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & curDir
14
15sql="CREATE TABLE table_name (" '要创建的Access表名
16for i=0 to rs.Fields.Count-2
17sql=sql & rs(i).Name&" CHAR(100),"
18Next
19sql=sql & rs(rs.Fields.Count-1).Name&" CHAR(100))"
20conn1.Execute sql
21End if
22
23Set rs1 = Server.CreateObject("ADODB.Recordset")
24Set rs1.ActiveConnection = conn1
25rs1.Source = "select * from table_name"
26rs1.CursorType = 3 ' adOpenKeyset
27rs1.LockType = 3 'adLockOptimistic
28rs1.Open
29
30Do While Not rs.Eof
31rs1.AddNew
32for i=0 to rs.Fields.Count-1
33rs1(i)=Trim(rs(i))
34Next
35rs1.Update
36rs.MoveNext
37Loop
38
39rs.Close
40rs1.Close
41conn.Close
42conn1.Close
43Set rs=nothing
44Set conn=nothing
45Set conn1=nothing
46set rs1=nothing