procedure TForm1.Button1Click(Sender: TObject);
var  provider,datasource,ExtendedProperties,PersistSecurityInfo : string;
begin
opendialog1.Filter:='Excel文件(*.xls)|*.xls';
opendialog1.Execute;
edit1.Text:=opendialog1.FileName;
provider:='Provider=Microsoft.Jet.OLEDB.4.0;';
datasource:=edit1.Text+';';
ExtendedProperties:= 'Extended Properties=excel 8.0;';
PersistSecurityInfo:='Persist Security Info=False';
adoconnection1.ConnectionString:=provider+DataSource+ExtendedProperties+PersistSecurityInfo;
adoconnection1.Connected:=true;
adotable1.TableDirect:=true;
adotable1.TableName:='sheet1$';
end;

解决方案 »

  1.   

    用ADO打开一个EXCLE文件,有什么错误提示吗
      

  2.   

    错误提示:找不到可安装的ISAM
      

  3.   

    错误在你的datasource
    procedure TForm1.Button1Click(Sender: TObject);
    var
      provider,datasource,ExtendedProperties,PersistSecurityInfo : string;
    begin
      opendialog1.Filter:='Excel文件(*.xls)|*.xls';  if opendialog1.Execute then
      begin
        edit1.Text := opendialog1.FileName;
        provider:='Provider=Microsoft.Jet.OLEDB.4.0;';
        datasource:='Data Source='+edit1.Text+';';
        ExtendedProperties:= 'Extended Properties=excel 8.0;';
        PersistSecurityInfo:='Persist Security Info=False';
    //Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source=D:\bcdemos.mdb;Persist Security Info=True
        adoconnection1.ConnectionString:=provider+DataSource+ExtendedProperties+PersistSecurityInfo;
        adoconnection1.Connected:=true;
        adotable1.TableDirect:=true;
        adotable1.TableName:='sheet1$';
      end;
    end;