首先将选择的excel倒入数据表中(我只举打开一个aa.xls的例子) Set MainWS = DBEngine.CreateWorkspace("MainWS", "admin", "") Set gdbTmp = MainWS.OpenDatabase("aa.xls", False, False, "Excel 8.0;hdr=Yes;") ‘得excel到表名 tabName = gdbTmp.TableDefs(0).Name gdbTmp.Close Set gdbTmp = Nothing MainWS.Close Set MainWS = Nothing '倒入数据到system.mdb Dim db As DAO.Database Dim tdfLinked As DAO.TableDef Dim tb As DAO.TableDef Dim intTemp As Intege If Dir(App.Path & "\system.mdb") <> "" Then Kill App.Path & "\system.mdb" End If Set db = DBEngine.CreateDatabase(App.Path & "/system.mdb", dbLangGeneral, dbVersion_0) Set tdfLinked = db.CreateTableDef("Temp") tdfLinked.Connect = "Excel 8.0;database=aa" tdfLinked.SourceTableName = tabName'表名 db.TableDefs.Append tdfLinked db.Execute "Select Temp.* into cc from Temp" db.TableDefs.Delete tdfLinked.Name db.TableDefs.Refresh 上面是简单的例子,你看看看就明白了,只要数据都倒入到数据库里了,那么剩下的工作就是对数据库操作了,那就简单了
哪有那么定义的:) 看下面的例子 Dim db As DAO.Database Dim rs As DAO.Recordset Dim strTable As DAO.TableDef Set db = OpenDatabase(App.Path + "\UFDATA.MDB") Label1.Caption = "表的总数" & db.TableDefs.Count For Each strTable In db.TableDefs List1.AddItem strTable.Name Next 这样就在List列出了数据库中所有的表
Set MainWS = DBEngine.CreateWorkspace("MainWS", "admin", "")
Set gdbTmp = MainWS.OpenDatabase("aa.xls", False, False, "Excel 8.0;hdr=Yes;")
‘得excel到表名
tabName = gdbTmp.TableDefs(0).Name
gdbTmp.Close
Set gdbTmp = Nothing
MainWS.Close
Set MainWS = Nothing
'倒入数据到system.mdb
Dim db As DAO.Database
Dim tdfLinked As DAO.TableDef
Dim tb As DAO.TableDef
Dim intTemp As Intege If Dir(App.Path & "\system.mdb") <> "" Then
Kill App.Path & "\system.mdb"
End If
Set db = DBEngine.CreateDatabase(App.Path & "/system.mdb", dbLangGeneral, dbVersion_0)
Set tdfLinked = db.CreateTableDef("Temp")
tdfLinked.Connect = "Excel 8.0;database=aa"
tdfLinked.SourceTableName = tabName'表名
db.TableDefs.Append tdfLinked
db.Execute "Select Temp.* into cc from Temp"
db.TableDefs.Delete tdfLinked.Name
db.TableDefs.Refresh
上面是简单的例子,你看看看就明白了,只要数据都倒入到数据库里了,那么剩下的工作就是对数据库操作了,那就简单了
dim db1 as dao
db1.(无tables属性)
Montaque==Digitalboy==Houyongfeng==Monkey
Montaque==Digitalboy==Houyongfeng==Monkey
Montaque==Digitalboy==Houyongfeng==Monkey
原始表结构:
6月数据
员工编号 员工名称 日期 平均生产量......
……
7月数据
员工编号 员工名称 日期 平均生产量......
……
……
生成表结构:
员工编号 员工名称 6月平均产量 7月平均产量……
看下面的例子 Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim strTable As DAO.TableDef
Set db = OpenDatabase(App.Path + "\UFDATA.MDB")
Label1.Caption = "表的总数" & db.TableDefs.Count
For Each strTable In db.TableDefs
List1.AddItem strTable.Name
Next
这样就在List列出了数据库中所有的表
http://www.csdn.net/expert/topic/958/958179.xml?temp=.5596582
对,之后在将每个月的数据进行对比。
如何在: 编号 姓名 日期 平均产量
0001 abc 2002-6-21 150
0002 cgh 2002-6-20 320
0003 opo 2002-7-21 333
0004 rrr 2002-8-2 444
……生成表格:编号 姓名 6月平均产量 7月平均产量 8月平均产量……
0001 abc 150 333 444
0002 chgh 320
…… 这条SQL语句如何写?