请问各位大侠,如何把SQL Server中的表导出为Excle表?我已经被这个问题困扰了半个月了,请各位大侠救救我!

解决方案 »

  1.   

    我这里的代码,你看一看吧,应该你是用的着的:procedure TMemberBasicInfQuery.FlatSpeedButton4Click(Sender: TObject);
    var
    aSheet:Variant;
    i:integer;begin
    //显示Ms-excel的执行过程
    ExcelApplication1.Visible[0]:=True;
    ExcelApplication1.WorkBooks.Add(xlWBATWorksheet,1);
    aSheet:=ExcelApplication1.Worksheets.Item[1];
    aSheet.cells[1,1].Value:='档案卡号';
    //............//asheet.cells[20,1].Value:='总计';
    i:=2;
    with adoquerycustomer do
     begin  first;   while not eof do begin
      aSheet.cells[i,1].NumberFormatLocal := '@';
      aSheet.cells[i,1].value := FieldbyName('hykh').Asstring;;
      //.........  i:=i+1;  next;
     //aSheet.SaveAs('d:\qqq.xls');
     // OleContainer1.CreateobjectFromFile('d:\qqq.xls',false);
    // aSheet.Application1.quit;  end;
    end;
    end;
      

  2.   

    F1Book用ODBC连接到数据库,保存成Excel文件.
    另外你可以用TscExcelExport控件,下面是两个用TscExcelExport的例子(其中
    scExcelExport1为TscExcelExport):
      Example 1 : easiest way to use  scExcelExport1.Dataset:=Table1;
      scExcelExport1.ExportDataset;
      scExcelExport1.Disconnect;  Example 2  scExcelExport1.WorksheetName := 'MyDataset';
      scExcelExport1.Dataset:=Table1;
      scExcelExport1.StyleColumnWidth:=cwOwnerWidth;
      scExcelExport1.ColumnWidth := 20;
      scExcelExport1.FontTitles := LabelTitle.Font;
      scExcelExport1.BorderTitles.BackColor := clYellow;
      scExcelExport1.BorderTitles.BorderColor := clRed;
      scExcelExport1.BorderTitles.LineStyle := blDoubleLine;
      scExcelExport1.OrientationTitles := 45;
      scExcelExport1.FontData := LabelData.Font;
      scExcelExport1.SummarySelection := ssValues;
      scExcelExport1.SummaryCalculation := scMAX;
      scExcelExport1.ExcelVisible:=False;
      scExcelExport1.ExportDataset;
      scExcelExport1.SaveAs('c:\test.xls',ffXLS);
      scExcelExport1.Disconnect;