Dim strSQL As String
Dim cn As New Connectioncn.Open "Provider=Microsoft.Jet.OLEDB.4.0; data souce=d:\vbphone\book1.xls;Extended Properties=Excel 10.0"
strSQL = "INSERT INTO Tphone1 SELECT * FROM [Sheet1$]"
cn.Execute strSQL, , adExecuteNoRecords有以上一代码,是想把EXCEL中的一个SHEET1数据导入到SQL中的TPHONE1中,win XP+VB6+VBSP6+远程SQL2000,执行时总是报ISAM的错!我已装过了MDAC 2.6和2.7还是不行?!!
或者那位有更好的办法来解决从EXCEL中导入SQL中已有的表中。谢谢!

解决方案 »

  1.   

    Dim cn As New Connection
    //这个声明是dim cn as new adodb.connection
      

  2.   

    其它应该没问题,因为我在SQL中从一个表往另一个表中导都没问题,从mshflexgrid中往EXCEL导数据也没问题呀?痛苦中。。
      

  3.   

    在 SQL 2000 上建立连接:
    "INSERT INTO Tphone1 SELECT * FROM [Sheet1$]IN ""d:\vbphone\book1.xls"" ""EXCEL 5.0;"""
      

  4.   

    谢谢daisy8675(莫依) ,但是改过后还是那个问题!
      

  5.   

    数据库引擎不知道 Tphone1 是哪里的表。而 SQL 2000 又不是 Jet Engine 支持的外部数据库,不能用 IN 子句来说明它。
      

  6.   

    看看有没有这个文件MSEXCL35.DLL,没有的话COPY一个在SYSTEM32下面并注册
      

  7.   

    一般EXCEL97/2000/XP生成的XLS文件都用8.0,你看看是不是这个问题。
      

  8.   

    我试了一下:Extended Properties=Excel 5.0或Extended Properties=Excel 8.0都正常,其它提示”找不到可安装的ISAM”。我机子上只装了OFFICE2K。