想请教大家一个简单的问题:
1.oracle的数据怎样才能以excel显示出来(因为显示样式的要求,用dbgrid不能满足)。
2.能够实现打印吗?(就像报表一样)

解决方案 »

  1.   

    用ExcelApplication 把它导出到EXCEL啊
      

  2.   

    参考下(dbgrid-excel)Procedure DBGridToExcel(Grid:TDBGrid);
    var
      xlApp:Variant;//TexcelApplication;
      XlWorkBook:Variant;//_workBook;
      xlworkSheet:Variant;//_worksheet;
      I,J:integer;
       FileName:String;
    begin
        xlapp:=CreateOleObject('Excel.application');
        XlApp.Visible:=False;
        xlWorkBook:=xlApp.Workbooks.Add(-4167);
        xlWorkSheet:=xlapp.WorkBooks[1].Worksheets['sheet1'];// as _workSheet;
        Grid.DataSource.DataSet.DisableControls;
        I:=1;
        For J:=0 to Grid.FieldCount-1 do
        xlWorksheet.Cells[i,j+1]:=Grid.Columns[j].Title.Caption;
        I:=2 ;
           Grid.DataSource.DataSet.First;
           while not Grid.DataSource.DataSet.eof do
           begin
            For J:=0 to Grid.FieldCount-1 do
            xlworksheet.Cells[i,j+1]:=Grid.Fields[j].Value;
           i:=I+1;
           Grid.DataSource.DataSet.Next;
           end;//while
         Grid.DataSource.DataSet.EnableControls;
         xlWorkSheet.Range[xlWorkSheet.cells[1,1],xlWorkSheet.Cells[I,Grid.FieldCount]].columns.AutoFit;
         xlapp.visible:=True;end;
      

  3.   

    to:cow8063(吴七郎)还可以用什么控件?请指点
      

  4.   

    to : yesxwl()
    可不可给各完整的东东[email protected]。我的确是很差的,刚接触delphi几天。
      

  5.   

    to : yesxwl()  这个东西很好,就是这句
    xlworksheet.Cells[i,j+1]:=Grid.Fields[j].Value;
    总是报错,我把它改成xlworksheet.Cells[i,j+1]:=Grid.Fields[j].AsString;就好了。
    不知道是什么原因?
    另外我要是想对数据在导出的同时作计算,统计应该怎么办呢?