怎样将EXCEL多个表中的部分列的内容读入ACCESS 数据库中?
                                 (数据库中已经有其它内容)    因工作需要,我得将一个EXCEL工作簿中的多个表中的部分内容读入ACCESS数据库中(工作表名就是一个医院的名称,里面放的是该医院住院病人发生的各项费用),然后按医院对人数及各项费用进行汇总。    求高手给个完整的源码:
    实现能选择EXCEL文档,显示并能选择其中所有工作表中的一个进行数据导入,EXCEL工作表“各列标题”是一样的,但是各列的顺序可能不一样,将其内容读入数据库,然后按医院进行人数及各项费用汇总,在控件中显示出来,并能将结果导出为EXCEL文档。
    请高人帮忙,谢谢!!![email protected]

解决方案 »

  1.   

    you can connect each sheet in the excel then read them.
      

  2.   

    Excel 是 Jet Engine 所支持的外部数据库之一。完全可以用 SQL 语句直接导入 Access 库,而且不必关心列的顺序。在 Access 上创建连接,然后cn.Execute "Select * into [;database=" & sAccessDBPath & "]." & sSheetName & " FROM [" & sSheetName & "$]"其中,sAccessDBPath 是 Access 文件名(可含路径),sSheetName 是工作表名。 
      

  3.   

    这不是问题,建议到 http://prj.csdn.net/
      

  4.   

    俺缺钱,俺给你完整的源码:
    使用Jet,然后INSERT INTO 你的ACCESS表 SELECT * FROM 你的XLS文件.XLS工作表
      

  5.   

    使用ADO连接到EXCEL文件,使用RecordSet打开数据,然后对RecordSet进行相应的字段操作。和操作其它的数据库一个方法。连接方法UP
      

  6.   

        总算在网上找到一个模块及其引用方法,献给正在苦苦探索的VB初学者,发扬我为人人的精神,并再次向真心关注我的提问的前辈表示诚挚的谢意!!!
    源码: 'EXCEL导入ACCESS模块声明   
      Private   Sub   ExportExcelSheetToAccess(sSheetName   As   String,   sExcelPath   As   String,   sAccessTable   As   String,   sAccessDBPath   As   String)   
              Dim   db   As   Database   
              Dim   rs   As   Recordset   
        
              Set   db   =   OpenDatabase(sExcelPath,   True,   False,   "Excel   8.0")   
              Call   db.Execute("Delete   *   from     [;database="   &   App.Path   &   sAccessDBPath   &   "]."   &   sAccessTable   &   "   ")   
              Call   db.Execute("Insert   Into     [;database="   &   App.Path   &   sAccessDBPath   &   "]."   &   sAccessTable   &   "   Select   *     FROM   ["   &   sSheetName   &   "$]")   
      End   Sub   
        
      在程序中调用如下语句:   
              ExportExcelSheetToAccess   "sSheetName",   "sExcelPath",   "AccessTable",   "sAccessDBPath"   
        
      并在工程中引用   Miscrosoft   DAO   3.6   即可。