这是一段把数据库数据保存到excel的代码,或许对你有帮助。procedure TOfficeform.Button2Click(Sender: TObject);
var MSExcel:Variant;
i,j:Integer;
begin
SaveDialog1.Filter:='*.XLS|*.XLS';
SaveDialog1.DefaultExt:='XLS';
if SaveDialog1.Execute then
begin
  MSExcel:=CreateOLEObject('Excel.Application');
  MSExcel.WorkBooks.Add;
  MSExcel.Visible:=False;
  Table1.Open;
  j:=Table1.RecordCount;
  Table1.First;
  for i:=1 to j do
  begin
    MSExcel.Cells[i,1].NumberFormat:='@';
    MSExcel.Cells[i,1].Value:=Table1.FieldByName('CODE').AsString;
    MSExcel.Cells[i,2].Value:=Table1.FieldByName('COLOR').AsString;
    Table1.Next;
  end;
  MSExcel.ActiveWorkBook.SaveAs(SaveDialog1.FileName);
  MSExcel.ActiveWorkBook.Saved:=True;
  MSExcel.Quit;
end;
end;

解决方案 »

  1.   

    daifei谢谢你的代码,我以前也做过把数据库转为EXCEL文件,今天领导给我安排了这个问题,我想不太好,能不能给我点EXCEL转为数据库的资料,我找了好多书,都没发现。非常感谢你了,谢谢!
      

  2.   


        A的帮助文件,在Office的帮助里面找(要完全安装的Office),或打开VBA使用帮助,或直接在帮助文件里找!    以利用Variant对象创建打开Excel文件,在执行读取单元格的操作(若是规则的表格还好,如果是不规则的表格,操作要麻烦一些)。    使用Delphi或 VB或VBA都比较快!我曾经试过这样将一份同学录列表提取到数据库中。
      

  3.   


        
        Table1.FieldByName('CODE').AsString:=MSExcel.Cells[i,1].Value;
        Table1.FieldByName('COLOR').AsString:=MSExcel.Cells[i,2].Value;我想问题的关键是怎么取得excel的行数和列数,这个我也想知道。