代码如下,提示错误时说:找不到可安装的ISAM.Microsoft Jet DataBase Engine系统装的是OFFICE2003,是不是和这个版本 Microsoft.Jet.OLEDB.4.0 有关啊?请个位有经验的指教下:DataSet ds =new DataSet();
private System.Windows.Forms.OpenFileDialog openFileDialog1;
this.openFileDialog1.Filter = "*.xls|*.xls";
try
{
if(DialogResult.OK == this.openFileDialog1.ShowDialog())
{
string strCon="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+this.openFileDialog1.InitialDirectory+this.openFileDialog1.FileName+";Extended Properties='Excel 11.0;HDR=YES;IMEX=1'";
OleDbConnection oleCon=new OleDbConnection(strCon);
OleDbDataAdapter oleDA=new OleDbDataAdapter("select * from [Sheet1$]",oleCon);
oleDA.Fill(ds);
}
}
catch(Exception ex)
{
MessageBox.Show(ex.Message+ex.Source+ex.InnerException);
}
return ds;

解决方案 »

  1.   

    'Excel 11.0 用8.0就夠了.
      

  2.   

    读取Excel返回数据集
    Dim DS As System.Data.DataSet
    Dim MyCommand As System.Data.OleDb.OleDbDataAdapter
    Dim MyConnection As System.Data.OleDb.OleDbConnectionMyConnection = New System.Data.OleDb.OleDbConnection( _
          "provider=Microsoft.Jet.OLEDB.4.0; " & _
          "data source=C:\myData.XLS; " & _
          "Extended Properties=Excel 8.0;")
    ' Select the data from Sheet1 of the workbook.
    MyCommand = New System.Data.OleDb.OleDbDataAdapter( _
          "select * from [Sheet1$]", MyConnection)DS = New System.Data.DataSet()
    MyCommand.Fill(DS)
    MyConnection.Close()对 Excel 工作簿中表(或范围)的有效引用。 
    若要引用完全使用的工作表的范围,请指定后面跟有美元符号的工作表名称。例如: 
    select * from [Sheet1$]
    若要引用工作表上的特定地址范围,请指定后面跟有美元符号和该范围的工作表名称。例如: 
    select * from [Sheet1$A1:B10]
    若要引用指定的范围,请使用该范围的名称。例如: 
    select * from [MyNamedRange]
    另外还要注意权限问题:
    如果是Window2003 ->控制面版 -> 管理工具 -> 组件服务 -> 
         打开树级目录找到子目录DCOM配置 -> Microsoft Excel 应用程序 
         -> 右击选“属性” -> 在弹出对话窗口中选“安全”选项卡->
         -> 将启动和激活权限设为自定义->点击编辑按钮->
         ->在新窗口中将Everyone用户加入,选中复选框"启动权限",给予启动权限如果是WindowXP ->控制面版 -> 管理工具 -> 组件服务(繁体为"元件服务") -> 
         打开树级目录找到子目录DCOM配置 -> Microsoft Excel 应用程序 
         -> 右击选“属性” -> 在弹出对话窗口中选“安全”选项卡->
         -> 将启动和激活权限设为自定义->点击编辑按钮->
         ->在新窗口中将Everyone用户加入,选中复选框"远程启动",给予远程启动权限