在DELPHI5中使用SERVER控件夹下的EXECAPPLICATION控件。创建一个实例。具体方法,你可以在CSDN中搜索一下相关主题。文章很多。

解决方案 »

  1.   

    这里是我的程序中把一个DBGRIDEH中的数据导出EXCEL的程序,我用了很久的,呵呵!
    ...
    users ComObj;
    ....
    procedure TfmCgrbb.ToolButton1Click(Sender: TObject);
    var
     I,J,K  :Integer;
     Sheet:Variant;
     SheetName:String;
    begin
     V:=CreateOleObject('Excel.Application');
     V.Visible:=True;
     V.Workbooks.Add(-4167);
     SheetName:=FormatDateTime('hhmmss',Time());
     V.Workbooks[1].WorkSheets[1].Name:=SheetName;
     Sheet:=V.Workbooks[1].Worksheets[SheetName];
     K:=0;
     for I:=0 to DBGridEh1.FieldCount-1 do
      begin
       if DBGridEh1.Columns[I].Visible then
        begin
          Sheet.Cells[1,K+1]:=DBGridEh1.Columns[I].Title.Caption;
          K:=K+1;
        end;
      end;
     with Query1 do
      begin
       First;
       J:=2;
       DisableControls;
       while not eof do
        begin
          K:=0;
          for I:=0 to DBGridEh1.FieldCount-1 do
           if DBGRidEh1.Columns[I].Visible then
            begin
             Sheet.Cells[J,K+1]:=FieldByName(DBGridEh1.Columns[I].FieldName).AsString;
             K:=K+1;
            end;
         Next;
         J:=J+1;
        end;
       EnableControls;
      end;
    end;