在 servers 添加 ExcelApplication
 ExcelApplication1.Connect;//启动并连接excel
ExcelApplication1.Volatile[0]:=true;//使excel可见
ExcelApplication1.Quit;//退出excel
ExcelApplication1.Disconnect;//断开连接excel

解决方案 »

  1.   

    对呀,这只是过到EXCEL里面,又怎么样能把程序里的东西倒进EXCEL呢?
      

  2.   

    要把程序中的东西倒进excel,必须通过程序代码实现。如果你使用excel建报表,可以首先在excel中画好,然后用程序把数据写进相应的单元格中
      

  3.   

    我们单位用的一个程序就是用DELPHI编的,但是最终能够倒进EXCEL,而且全部划好格子,怎么实现呢?
      

  4.   

    我找到一个现成的帖子,贴出来给你看: Excel强大的数据录入功能极打印预览功能是其他大多数程序望尘莫及的,能不能在我们自己编的程序中调用Excel的数据录入功能及预览功能呢。实际上,使用Delphi你能完全控制Excel或Word的所有功能。虽然来自Excel对象层次内部非常复杂,但我们通过使用Variant(在OLE自动化中使用的Delphi的安全数组版本)通常可以简洁,容易的实现对Excel的控制。
      下面,我将我实际运用的一些方法介绍给大家:1.启动Excel  在Uses中加入Comobj;var
     v:Variant;
    begin
     v:=CreateOleobject(‘Excel.Application’);
     v.Visible:=true;
    end;  其中,Comobj中包含了用来检索OLE的对象和向其传发命令的例程,第一行代码启动Excel,执行后Excel会在内存中出现,因此第二行代码使之可见。2.关闭Excel  在创建了Excel Application对象后,调用它的Quit方法完成关闭事件。If not varIsEmpty(v) then v.quit;  如果需要在关闭前确定是否存盘,加入:v.DiaplayAlert:=true; //确定存盘
    v.DiaplayAlert:=false;//不存盘,直接退出3.加入工作表及对其表格内容的操作var
     Sheet: Variant;
    begin
     v.workbook.add;
     v.Workbooks.Add;
     v.Workbooks[1].WorkSheets[1].Name := '数据录入';
     Sheet:= v.Workbooks[1].WorkSheets['数据录入'];
     Sheet.Cells[1,1] :='试验'; Label1.Caption:=Sheet.Cells[1,1];
    End;  Sheet对象是很多页的集合,其他的Workbooks是工作薄的集合,WorkSheets对象是工作表的集合,Charts对象是图表的集合。4.格式的设置var
     Range: Variant;
    begin
     Range := v.Workbooks[1].WorkSheets['数据录入'].Range['A2:M2’]; //单元格从A2到M2 Range.Merge; //合并单元格
     Range.Rows.RowHeight := 20; //设置行高
     Range.Borders.LineStyle := 1; //加边框
     Range.Columns[2].ColumnWidth := 12; // 设置列宽
     Range.FormulaR1C1 := '标题';
     Range.HorizontalAlignment := xlCenter; //水平对齐方式 
     Range.VerticalAlignment := xlCenter; //垂直对齐方式
     Range.Characters.Font.Name := '宋体'; //字体
     Range.Characters.Font.FontStyle := '加粗';
     Range.Characters.Font.Size := 12;
     Range.Characters.Font.OutlineFont := False; //是否有下划线
     Range.Characters.Font.ColorIndex := xlAutomatic; //颜色
    end;  其他的属性可以察看MSDN或者其他资料。5. 打印的设置var
     Sheet: Variant;
    begin
     Sheet := XLApp1.Workbooks[1].WorkSheets['数据录入'];
     Sheet.PageSetup.PrintTitleRows :='$1:$3'; //页眉
     Sheet.PageSetup.PrintTitleColumns := '';
     Sheet.PageSetup.LeftFooter := ' 注:页脚'+' 总共&N页'+'--第&P页'; //页脚
     Sheet.PageSetup.LeftMargin := 30; //设置边距
     Sheet.PageSetup.RightMargin := 30;
     Sheet.PageSetup.TopMargin := 30;
     Sheet.PageSetup.BottomMargin := 50;
     Sheet.PageSetup.PrintQuality := 400; //分辨率
     Sheet.PageSetup.CenterHorizontally := True;//是否水平居中
     Sheet.PageSetup.CenterVertically := True; //是否垂直居中
     Sheet.PageSetup.Orientation := 2; //横向打印
     Sheet.PageSetup.Draft := False; //非草稿模式
     Sheet.PageSetup.FirstPageNumber := xlAutomatic;
     Sheet.PageSetup.BlackAndWhite := True; //黑白稿
     Sheet.PageSetup.Zoom := 100; //缩放
     sheet.PrintPreView; //打印预览
    end;  好了,到这,我已经介绍了大部分常用的控制方法,试试吧。提醒你,你的机子装了Excel没有…… 
      

  5.   

    呵呵,那还有没有可以万用的一个过程,
    写好SQL语句,就可以生成不同的报表的啊。