国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

從DBGrid,StringGrid導(dǎo)出Excel

2019-11-18 18:01:44
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
 

PRocedure TDM.CopyDbDataToExcel(Target: TDBGridEh;mb,FileName: string);
var
iCount, jCount: Integer;
XLApp: Variant;
Sheet: Variant;
begin
Screen.Cursor := crHourGlass;
if not VarIsEmpty(XLApp) then
begin
 XLApp.DisplayAlerts := False;
 XLApp.Quit;
 VarClear(XLApp);
end;
//--------------------------選擇模板------
// CopyFile(pChar(Trim(ExtractFilePath(application.ExeName))+mb+'.xls'),pChar(FileName+'1.xls'),false);
//------------------------
//通過(guò)ole創(chuàng)建Excel對(duì)象
try
 XLApp := CreateOleObject('Excel.Application');
except
 Screen.Cursor := crDefault;
 Exit;
end;
if mb = '統(tǒng)計(jì)-項(xiàng)目信息前' then
  XLApp.WorkBooks.Add[Trim(ExtractFilePath(Application.ExeName))+mb+'.xls']    //你要把數(shù)據(jù)放在那里啊,先生成個(gè)文件在e:/1.xls
else
 XLApp.WorkBooks.Add;
XLApp.WorkBooks[1].WorkSheets[1].Name := 'sheet1';
Sheet := XLApp.Workbooks[1].WorkSheets['sheet1'];
if not Target.DataSource.DataSet.Active then
begin
 Screen.Cursor := crDefault;
 Exit;
end;
Target.DataSource.DataSet.first;

for iCount := 0 to Target.Columns.Count - 1 do
begin
 Sheet.cells[1, iCount + 1] := trim(Target.Columns.Items[iCount].Title.Caption);
end;

jCount := 1;
while not Target.DataSource.DataSet.Eof do
begin

 for iCount := 0 to Target.Columns.Count - 1 do   //
 begin
  if iCount = 0 then
   Sheet.cells[jCount + 1, iCount + 1] := IntToStr(jCount)
  else
   Sheet.cells[jCount + 1, iCount + 1] := trim(Target.Columns.Items[iCount].Field.AsString);
 end;
Inc(jCount);
Target.DataSource.DataSet.Next;
end;

//--------------------可以在此添加Excel的宏-----------

XLApp.ActiveWorkbook.SaveAs(FileName:=FileName);                                                                                                            ;
Screen.Cursor := crDefault;
XLApp.ActiveWorkbook.Close;
end;
-----------------------------------------StringGridToExcel

procedure TDM.CopySGDataToExcel(Target: TStringGrid;FileName: string);
var
iCount, jCount: Integer;
XLApp: Variant;
Sheet: Variant;
begin
Screen.Cursor := crHourGlass;
if not VarIsEmpty(XLApp) then
begin
XLApp.DisplayAlerts := False;
XLApp.Quit;
VarClear(XLApp);
end;
//通過(guò)ole創(chuàng)建Excel對(duì)象
try
XLApp := CreateOleObject('Excel.Application');
except
Screen.Cursor := crDefault;
Exit;
end;
XLApp.WorkBooks.Add;    //你要把數(shù)據(jù)放在那里啊,先生成個(gè)文件在e:/1.xls
XLApp.WorkBooks[1].WorkSheets[1].Name := 'sheet1';
Sheet := XLApp.Workbooks[1].WorkSheets['sheet1'];
Target.Row := 0;
for iCount := 0 to Target.RowCount - 1 do
begin
 for jCount := 0 to Target.ColCount - 1 do
   Sheet.cells[iCount + 1, jCount + 1] := Target.Cells[jCount,iCount];
 Target.Row := iCount;
end;
XLApp.ActiveWorkbook.SaveAs(FileName:=FileName);
Screen.Cursor := crDefault;
XLApp.ActiveWorkbook.Close;
end;



上一篇:掃雷外掛的設(shè)計(jì)與實(shí)現(xiàn)(三)

下一篇:掃雷外掛的設(shè)計(jì)與實(shí)現(xiàn)(二)

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
學(xué)習(xí)交流
熱門(mén)圖片

新聞熱點(diǎn)

疑難解答

圖片精選

網(wǎng)友關(guān)注

主站蜘蛛池模板: 新邵县| 大同县| 六枝特区| 靖州| 乾安县| 云南省| 上饶市| 嵊州市| 虹口区| 赤峰市| 吴川市| 闽清县| 泸水县| 鄱阳县| 醴陵市| 扎囊县| 都兰县| 仙游县| 宿迁市| 自治县| 偏关县| 宁安市| 莆田市| 满城县| 通州区| 陆良县| 东台市| 茌平县| 林西县| 名山县| 新昌县| 罗甸县| 资溪县| 金川县| 合阳县| 湘西| 湄潭县| 甘泉县| 浏阳市| 霍林郭勒市| 京山县|