DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: a1871584487
今日帖子: 9
在线用户: 8
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 summer_slimberg (夏日冰河) ★☆☆☆☆ -
盒子活跃会员
2004/3/17 16:16:03
标题:
请求帮忙 浏览:1303
加入我的收藏
楼主: 急死我了,怎么把诸如EXCELL类型的表格和数据库中的数据连接起来?!!帮忙!!
----------------------------------------------
-
作者:
男 summer_slimberg (夏日冰河) ★☆☆☆☆ -
盒子活跃会员
2004/3/18 9:28:06
1楼: procedure TForm1.Button1Click(Sender: TObject);
var  Excel,WrkBook,WrkSheet:olevariant;
Row,SheetCount,tmp:Integer;
Begin
   try
     //Excel:=self.OleContainer1.OleObject;
     Excel := CreateOleObject('Excel.Application');
   except
   if Application.MessageBox('对不起,你的机器没有安装Microsoft Excel,是否继续导出?' + #13#13 + '导出后在您的机器上不能直接打开,必须安装Excel到机器上才能打开!', '注意', MB_OKCANCEL) = ID_no then      Exit;
   end;

   if SaveDialog1.Execute then
   Begin
     //self.StatusBar1.Panels[1].Text := '系统正在导出,请稍后......';
     WrkBook:=Excel.WorkBooks.Add;
     Row := 1;
     SheetCount:=1;
     while not ADOQuery1.Eof do
     Begin
       if Row=1 then
       for tmp := 0 to s_caption.Count - 1 do     //插入加入标题:
       Excel.WorkSheets[SheetCount].Cells[Row,tmp+1].value:=s_caption.Items[tmp];
       inc(Row);
       for tmp := 0 to ADOQuery1.FieldCount - 1 do
       Excel.WorkSheets[SheetCount].Cells[Row,Tmp+1].value := ADOQuery1.Fields[tmp].AsString;
       if Row>50000 then
       Begin
         SheetCount:=SheetCount+1;
         Row:=0;
         if SheetCount>3 then
            Begin
              WrkSheet:=WrkBook.WorkSheets[WrkBook.WorkSheets.Count];
              WrkBook.WorkSheets.Add(emptyparam,WrkSheet,1,$FFFFEFB9);
            End;
       End;        
     ADOQuery1.Next;
     //ProgressBar1.StepIt;
     End;  //循环结束
    Excel.Activeworkbook.saveas(SaveDialog1.FileName);
   end;
    WrkBook.close;
    Excel.quit ;
    Excel:=unassigned ;
    self.OleContainer1.LoadFromFile(SaveDialog1.FileName);
    ShowMessage('系统已经导出,请到'+SaveDialog1.FileName+'里查看');
end;
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行54.6875毫秒 RSS