试试:
OPENDATASOURCE 
[price$] 应该是规则的二维表,最好不要有格式或汇总行之类的

解决方案 »

  1.   

    谢谢你的回复,playyuer。这是一个规则的二维表,因为需要把此表与其它表关联使用,只能采用数据库的形式访问。其实我试过用excel.application的方式访问,可以正常访问的。
      

  2.   

    SELECT * 
    FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
      'Data Source="e:\price.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...工作表名
      

  3.   

    哈哈。。不是的!你不要打开excel文件的同时掉用它!你关掉excel!你可以先用导入导出工具,把一个表导为excel看看它的格式是什么!如:第一行必须是列名!..SELECT * 
    FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
      'Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions
    删除:
    DELETE 
    FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
      'Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions
      

  4.   

    谢谢各位网友!!用OpenDataSource试过了,还是一样,有部份字段的数据读不了。其实我不太关心用OpenDataSource还是OPENROWSET,刚开始我怀疑这是数据引擎的问题,不过另一个引擎我也试过了也一样(Driver={Microsoft Excel Driver (*.xls)}),这使我又不得不怀疑自己的怀疑。那么会不会是EXCEL找格式的问题呢?出现异常的是数值型的字段,我将其设为文本型时数据全左对齐,将其设为数值型有几个不能右对齐,而恰恰就是这几个不能读取出来。将其双击后才自动右对齐,保存后再用上面的SQL语句测试,居然可以了。不过我很多这样的数据,不能一一双击,不知各位有什么建议?另外我也想知道前面失败与成功的原因。