麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發(fā)設計 > 正文

如何將幾個DBGRID里的內(nèi)容導入同一個EXCEL表中?

2019-11-18 18:38:59
字體:
供稿:網(wǎng)友
 

前言:

  在軟件實際制作中,為節(jié)省開發(fā)成本和開發(fā)周期,一些軟件人員通常會吧DBGrid中的數(shù)據(jù)直接導出到Excel表中,而先前能看到的函數(shù)僅僅只能在WorkBook的一個Sheet中導入數(shù)據(jù),不支持多Sheet!。

單元應用:

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DB, DBTables, Grids, DBGrids, ActiveX, ComObj,
  Excel2000, OleServer;

測試環(huán)境:

  OS:Win2k PRo;Excel2k;Delphi6.0

源程序:  

{
功能描述:把DBGrid輸出到Excel表格(支持多Sheet)
設計:CoolSlob
日期:2002-10-23
支持:[email protected]
調(diào)用格式:CopyDbDataToExcel([DBGrid1, DBGrid2]);
}
procedure CopyDbDataToExcel(Args: array of const);
var
  iCount, jCount: Integer;
  XLApp: Variant;
  Sheet: Variant;
  I: Integer;
begin
  Screen.Cursor := crHourGlass;
  if not VarIsEmpty(XLApp) then
  begin
    XLApp.DisplayAlerts := False;
    XLApp.Quit;
    VarClear(XLApp);
  end;

  try
    XLApp := CreateOleObject('Excel.application');
  except
    Screen.Cursor := crDefault;
    Exit;
  end;

  XLApp.WorkBooks.Add;
  XLApp.SheetsInNewWorkbook := High(Args) + 1;

  for I := Low(Args) to High(Args) do
  begin
    XLApp.WorkBooks[1].WorkSheets[I+1].Name := TDBGrid(Args[I].VObject).Name;
    Sheet := XLApp.Workbooks[1].WorkSheets[TDBGrid(Args[I].VObject).Name];
   
    if not TDBGrid(Args[I].VObject).DataSource.DataSet.Active then
    begin
      Screen.Cursor := crDefault;
      Exit;
    end;

    TDBGrid(Args[I].VObject).DataSource.DataSet.first;
    for iCount := 0 to TDBGrid(Args[I].VObject).Columns.Count - 1 do
      Sheet.Cells[1, iCount + 1] :=
          TDBGrid(Args[I].VObject).Columns.Items[iCount].Title.Caption;
         
    jCount := 1;
    while not TDBGrid(Args[I].VObject).DataSource.DataSet.Eof do
    begin
      for iCount := 0 to TDBGrid(Args[I].VObject).Columns.Count - 1 do
        Sheet.Cells[jCount + 1, iCount + 1] :=
            TDBGrid(Args[I].VObject).Columns.Items[iCount].Field.AsString;
           
      Inc(jCount);
      TDBGrid(Args[I].VObject).DataSource.DataSet.Next;
    end;
  end;

  XlApp.Visible := True;
  Screen.Cursor := crDefault;
end;


上一篇:利用書簽功能對TDBGrid控件中多個記錄的處理

下一篇:VCL消息處理機制的內(nèi)幕

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網(wǎng)友關注

主站蜘蛛池模板: 精品久久一区二区 | 亚洲生活片 | 视频一区二区三区视频 | 黄在线免费看 | 国产一级淫片免费看 | 久久久www成人免费毛片 | 亚洲视屏在线 | 91网站链接 | 欧美十区 | 国产精品18久久久久久久久 | 久久精品中文字幕一区二区 | 一级黄色大片在线观看 | 国产精品久久久久久久成人午夜 | 欧美久久一区 | 一区国产视频 | 毛片在线免费 | 成人免费一区二区三区视频网站 | 久久91亚洲精品久久91综合 | 欧美三级欧美成人高清www | 羞羞视频在线免费 | 99精品视频久久精品视频 | 一级黄片毛片免费看 | 一级片999 | 吾色视频 | 免费国产一级淫片 | 日日摸夜夜添夜夜添牛牛 | 午夜视频在线观看91 | 在线播放免费av | 黄色片网站在线播放 | 美女露100%无遮挡 | 久久一区三区 | 黄色片网站免费观看 | 日本看片一区二区三区高清 | 久久国产综合视频 | 欧美精品一区自拍a毛片在线视频 | 性少妇freeseⅹbbwhd | 男人的天堂色偷偷 | 成人9禁啪啪无遮挡免费 | 久久久久久免费 | 欧美在线 | 亚洲 | 日韩视频精品一区 |