那等同于读取一个excel文件,然后吧数据导入到数据库中,其实写入数据库的操作和一般的数据库程序没有什么不同,关键在于读取excel的数据:{以下是把excel数据写到文本文件的,自己修改一下吧}
procedure TForm1.Button2Click(Sender: TObject);
var
  I,J : integer;
  TxtFile : TextFile;
  TmpString : String;
begin
  try
    if VarIsEmpty(XlsApp) then
      XlsApp := CreateOleObject('Excel.Application');
    XlsSheet := XlsApp.workbooks.open('c:\my documents\book3.xls');    AssignFile(TxtFile,'C:\My Documents\Test.txt');
    Rewrite(TxtFile);
    try
      for I := 3 to 21 do
      begin
        TmpString := '';
        for J := 1 to 5 do
        begin
          TmpString := TmpString + XlsSheet.ActiveSheet.Cells[I,J].Text + '|';
        end;
        Writeln(TxtFile,Tmpstring);
      end;
    finally
      CloseFile(TxtFile);
    end;
    XlsApp.Visible := true;
  except
    XlsSheet.close;
    XlsApp.Application.quit;
    XlsApp := Unassigned;
    XlsSheet := Unassigned;
  end;
end;

解决方案 »

  1.   

    可是我是在编辑完EXCEL后,这时EXCEL还没有释放呢。我所要做的工作是连续性的。导入到EXCEL,然后编辑,编辑完之后,保存,保存完之后由程序自动导入到EXCEL,这些用一个按钮来实现。
      

  2.   

    恐怕比较难,因为你的保存动作是由excel完成的,你难以去截获这个信息。
      

  3.   

    是啊,我就是在想这个问题,能不能调用API来实现啊,取得刚刚保存的文件
      

  4.   

    写具体一些好吗?或者给个例子,我没有用过API