很久没有做了,今天奉老板之命重操旧业,遇到很多麻烦!
我要用VB和Access开发一个小MIS,有这样一点需求:
1.每天要将Excel表中的内容导入到Access
2.随时可以以每个月为单位进行查询
我感觉如果每天导入的话就是每天需要一张表,那这样如果要以月为单位在若干表内进行查询,是不是很复杂呢?而且这样的话,每天的新表名字是在写程序时无法确定的,这个该怎么解决呢?
急需解答啊!!!各位高手帮帮忙,小妹不胜感激呀!

解决方案 »

  1.   

    1.使用ado变成,然后connection执行语句
    db.Execute "SELECT * INTO access数据表名 from [Excel8.0;DATABASE=C:\test\authors.XLS].[authors] "
    其中文件名和表名可以通过变量达到动态的效果
    2.只要解决第一个问题,第二个问题就不是问题了,嘻嘻!
      

  2.   

    交个朋友
    msn [email protected]
      

  3.   

    frankwrong,可能因为很久不弄的缘故,你的回答对于我来说写得有些简单了,我还是不太明白!而且试过发现不行,提示说缺少对象!我用的是一个command,点击后就可将excel表导入,可就出现了那样的错误提示!这是怎么回事呢?能不能细致一点?多谢了!
      

  4.   

    to:butterfly_79,
       frankwong写的是dao编程,看一下msdn就知道了。
      

  5.   

    Excel的操作与数据库的操作类似,excel里面的工作表和数据库里面的数据表是同样的.excel里面的数据位置是用行列来定义的,比如说最左上的那个数据位置就是A1,就是1行A列的那个小格不过,如果你的excel里面每一列都有个列名的话,拿这个列名就相当于数据表里面的子段名这样,你只要知道怎么连接excel就行了连接的方法:
    Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[excel的文件路径];Extended properties=""Excel 8.0;HDR=Yes;IMEX=1""" 
    "HDR=Yes;" 指示第一行包含的是列名,不是数据
    "IMEX=1;"  告诉driver用text的类型来处理intermixed的数据列注意:写SQL语句的时候,表名是要跟$符号的,而且[]也是必须的
    例如:"SELECT * FROM [sheet1$]" sheet1就是第一个工作表