procedure TMainFrm.DataSetToExcel(AFileName: string);
begin
  try
    FExcelApp.Visible[0] := False;
    try
      FExcelBook.ConnectTo(FExcelApp.Workbooks.Add(EmptyParam, 0));
    except
      raise Exception.Create('连接到Excel文件出错,可能是没有安装Excel软件');
    end;
    FExcelSheet.ConnectTo(FExcelBook.Worksheets[1] as _WorkSheet);
    with FExcelSheet.QueryTables.Add(ADOQuery.Recordset, FExcelSheet.Range['A3', EmptyParam], EmptyParam) do
    begin
      FieldNames := False;
      Refresh(False);
    end;
    FExcelSheet.Columns.Item[3, EmptyParam].NumberFormatLocal := 'yyyy-mm-dd';
    FExcelBook.SaveCopyAs(AFileName);
    FExcelBook.Close(False);
  finally
    FExcelApp.Quit;
    FExcelSheet.Disconnect;
    FExcelBook.Disconnect;
    FExcelApp.Disconnect;
  end;
showmessage('倒入完毕!');  
end;procedure TMainFrm.BitBtn2Click(Sender: TObject);
var
   SPath:string;
begin
spath:=extractfilepath(application.ExeName);
  with ADOQuery do
  begin
    if not Active then
    begin
      SQL.Text := 'select * from  message00';
      Open;
    end;
    DataSetToExcel(SPath+'Excel\message00.xls');
  end;
end;