用BDE Table组件怎样把 excel数据导入 dbf 表里去呢? 需要写函数! 

解决方案 »

  1.   

    select ename,nno from Opendatasource('Microsoft.Jet.OLEDB.4.0','Data Source="D:\guapai\emplnew.xls";User ID=Admin;Password=;Extended Properties=Excel 8.0;Persist Security Info=false')...[sheet1$]
      

  2.   

    这个是用 Query 组件的。 我需要的是 BDE Table 组件把 Excel文件内容导入到Table关联的表里面去。这是我写的代码 有这个错误出现: OLE error 800A03EC unit ImportTable3;interfaceuses
      SysUtils, Classes, DB,StdCtrls, Graphics, DBTables,BDE,dbierrs,Messages,Windows,Variants,Controls,Dialogs,Comobj,Forms; type
     TOpendialogg = class(TOpenDialog)
     end;type
      TImportTable3 = class(TTable)
      private  protected  public
        procedure FromExcel(T : TImportTable3);
      published  end;procedure Register;implementation  procedure TImportTable3.FromExcel(T : TImportTable3);
      var
      app : Olevariant;
      workbook : Olevariant;
      opendialog : TOpendialogg;
      //stropenfile ,dispstr: String;
     // excelvisible : boolean;
      rowcount ,columncount: integer;
      i,j:integer;  begin       //excelvisible :=true;       opendialog :=TOpendialogg.Create(nil);
           opendialog.Filter:='microsoft excel file|*.xls';
           opendialog.Execute;
           //stropenfile:=opendialog.FileName;
          app := createoleobject('excel.application');
          workbook:=app.workbooks.open(opendialog.FileName);      app.worksheets[1].activate;
           //app.visible:=false;
          rowcount:=workbook.worksheets[1].UsedRange.Rows.count;
          columncount:=workbook.worksheets[1].UsedRange.Columns.count;
               t.Insert;
                for j:=0 to rowcount-1 do
              begin
                  for i:=0 to columncount-1 do
                  begin
                  t.Fields[i].Value:=app.cells[i,j].value;
                  end;
                   t.Post;
               end;
                workbook.close;
                app.quit;
                app:=unassigned;  end;
    procedure Register;
    begin
      RegisterComponents('My five Components', [TImportTable3]);
    end;end.
      

  3.   

    OLE error 800A03EC 错误
    看看从前的帖子
    http://bbs.csdn.net/topics/300041106