向word文档中输出表格及图形

 

工作中遇到一个软件开发项目,该项目要求将相关数据报表存为word格式文档(涉及表格、图形的输出),便于用户修改。 数据挖掘工具

本人在开发过程中,发现此类资料较少,且介绍相对简单,大多只是文本数据的的简单输出。现将个人摸索出的一些方法及心得体会告诉大家,以求共同探讨,共同提高!

 

form上放置以下控件:一个Tadoquery组件,名称为ADOQuery1

                  一个TWordFont组件,名称为WordFont1 数据挖掘研究院

                  一个TWordApplication组件,名称为WordApplication1 数据挖掘研究院

                  一个TWordDocument1组件,名称为Doc;

数据挖掘工具

                  一个TWordParagraphFormat组件,名称为ParaFmt 数据挖掘研究院

                  一个TIMAGE组件,名称为IMAGE1 

数据挖掘工具

                  一个TBUTTON组件,名称为Button1

数据挖掘交友

  

                 

 

procedure TFrm_TravilRDXL.EnterText;//自定义函数 数据挖掘交友

var 数据挖掘实验室

  S: Selection;

数据挖掘工具

  MyFormat : Word; 数据挖掘实验室

 // Bitmap : TBitMap;

数据挖掘交友

  AData :cardinal;

  APalette : hpalette;

  数据挖掘工具

begin

  S := WordApplication1.Selection;

数据挖掘论坛

  WordFont1.ConnectTo(S.Font); 数据挖掘交友

 

数据挖掘工具

  S.TypeText("甘肃省兰州市旅游管理局热点线路统计表");

  //加回车键,形成第一个段落:Doc.Paragraphs.Item(1) 数据挖掘论坛

 

  S.TypeParagraph; 数据挖掘交友

  数据挖掘研究院

  //输入文字

数据挖掘实验室

  S.TypeText(txt_DateFrom.Text+""+txt_DateTo.text);

数据挖掘论坛

  //加回车键,形成第二个段落:Doc.Paragraphs.Item(2) 数据挖掘论坛

  S.TypeParagraph; 数据挖掘交友

  数据挖掘论坛

  S.TypeText("使用部门:"+"销售部"+#13);

数据挖掘交友

  S.TypeText("时间范围:"+"2002-8-82002-8-28"+#13 );

  S.TypeText("线路类型:"+"团体线"+#13); 数据挖掘论坛

  s.TypeText("线路等级:"+"豪华线"+#13); 数据挖掘研究院

  //加回车键,形成第三个段落:Doc.Paragraphs.Item(3) 数据挖掘论坛

  S.TypeParagraph; 数据挖掘交友

  数据挖掘工具

  数据挖掘交友

  //--------------------------设置段落1属性-------------------//

数据挖掘工具

    ParaFmt.ConnectTo(Doc.Paragraphs.Item(1).Format);

    //绑定WordFont1Doc.Paragraphs.Item(1).Range.Font

数据挖掘论坛

  数据挖掘论坛

    WordFont1.ConnectTo(Doc.Paragraphs.Item(1).Range.Font); 数据挖掘实验室

    //设置段落对齐方式 数据挖掘交友

    ParaFmt.Alignment := wdAlignParagraphCenter;

    //设置段落行距(磅)

    ParaFmt.SpaceAfter := 24;

  数据挖掘论坛

    //画单水平线 数据挖掘实验室

    ParaFmt.Borders.Item(3).LineStyle := wdLineStyleSingle;

数据挖掘交友

    WordFont1.Size := 18; 数据挖掘实验室

    WordFont1.Name := "Arial";

数据挖掘研究院

    WordFont1.Bold := integer(True);

数据挖掘工具

    WordFont1.ColorIndex:=5;   //粉红色字体

 

  //--------------------------设置段落2属性-------------------//

数据挖掘研究院

    ParaFmt.ConnectTo(Doc.Paragraphs.Item(2).Format);

    //绑定WordFont1Doc.Paragraphs.Item(1).Range.Font 数据挖掘工具

 

数据挖掘交友

    WordFont1.ConnectTo(Doc.Paragraphs.Item(2).Range.Font); 数据挖掘论坛

    //设置段落对齐方式 数据挖掘研究院

    ParaFmt.Alignment := wdAlignParagraphCenter; 数据挖掘实验室

    //设置段落行距(磅) 数据挖掘实验室

    ParaFmt.SpaceAfter := 12; 数据挖掘工具

    WordFont1.Size := 18;

数据挖掘工具

    WordFont1.Name := "Arial";

数据挖掘研究院

  数据挖掘交友

end;

 

  数据挖掘实验室

procedure TFrm_TravilRDXL.Button1Click(Sender: TObject);

数据挖掘论坛

var 数据挖掘实验室

  i,j:integer; 数据挖掘研究院

begin

    i:=2;//初始化

数据挖掘论坛

    j:=1;

数据挖掘论坛

  数据挖掘研究院

  WordApplication1.Connect; 数据挖掘论坛

  数据挖掘实验室

   Doc.ConnectTo(WordApplication1.Documents.Add(EmptyParam, EmptyParam));

数据挖掘论坛

   WordApplication1.Visible := True;//显示word文档 数据挖掘交友

 

数据挖掘论坛

   EnterText;//自定义函数---添加文本

数据挖掘研究院

 

数据挖掘论坛

  数据挖掘论坛

    WordApplication1.Selection.SetRange(100,100);//设定段落范围

数据挖掘研究院

  数据挖掘交友

 

数据挖掘论坛

    doc.Tables.Add(WordApplication1.Selection.Range,ADOQuery1.RecordCount+1,5);//创建表格 数据挖掘交友

 

    doc.Tables.Item(1).Columns.Item(1).Width:=120;//设定第一列宽度

数据挖掘工具

 

//--------------------------设定第一列字体属性-----------------------// 数据挖掘研究院

 

    while j<6 do begin

数据挖掘工具

    doc.Tables.item(1).cell(1,j).Range.Bold:=integer(true);

    WordFont1.ConnectTo(doc.Tables.item(1).cell(1,j).Range.Font);

    WordFont1.ColorIndex:=10;

    j:=j+1; 数据挖掘实验室

    end; 数据挖掘交友

//--------------------------向表格中添加数据----------------------------------------//

    doc.Tables.Item(1).Cell(1,1).Range.Text:="线路名称";

    doc.Tables.Item(1).cell(1,2).Range.text:="人数";

数据挖掘工具

    doc.Tables.item(1).cell(1,3).Range.text:="销售额(元)"; 数据挖掘交友

    doc.Tables.item(1).cell(1,4).Range.text:="毛利润"; 数据挖掘工具

    doc.Tables.Item(1).cell(1,5).Range.text:="毛利润率";

数据挖掘论坛

    while not ADOQuery1.Eof do begin 数据挖掘实验室

  数据挖掘论坛

      doc.Tables.Item(1).Cell(i,1).Range.Text:=ADOQuery1.fieldbyname("linename").asstring; 数据挖掘实验室

      doc.Tables.Item(1).cell(i,2).Range.text:=ADOQuery1.Fieldbyname("STUFFNUM").asstring;

      doc.Tables.Item(1).cell(i,3).Range.text:=ADOQuery1.Fieldbyname("TOTALACCOUNT").asstring; 数据挖掘工具

      doc.Tables.Item(1).cell(i,4).Range.text:=ADOQuery1.Fieldbyname("TOTAL").asstring;

      doc.Tables.Item(1).cell(i,5).Range.text:=ADOQuery1.Fieldbyname("ration").asstring; 数据挖掘研究院

      ADOQuery1.Next;

数据挖掘论坛

      i:=i+1; 数据挖掘研究院

  数据挖掘工具

    end;

 

//----------------------------------------------------------------------//

  数据挖掘实验室

    WordApplication1.Selection.SetRange(350,350);//设定段落范围 数据挖掘实验室

    ParaFmt.ConnectTo(WordApplication1.Selection.Paragraphs.item(1).Format);

    ParaFmt.Borders.Item(3).ColorIndex:=6; 数据挖掘论坛

    ParaFmt.Borders.Item(3).LineStyle:=wdLineStyleSingle;//画底线

数据挖掘论坛

 

//-----------设置段落字体----------------------------------------// 数据挖掘论坛

    WordFont1.ConnectTo(WordApplication1.Selection.Paragraphs.Item(1).Range.Font);

    WordFont1.Bold:=integer(true);

    WordFont1.Size:=16; 数据挖掘研究院

  数据挖掘研究院

 //-----------------------------粘贴图形-------------------------//

    Image1.Picture.SaveToClipboardFormat(MyFormat,AData,APalette); 数据挖掘工具

    Clipboard.SetAsHandle(MyFormat,AData);

    doc.Sentences.Last.Paste; 数据挖掘交友

 

 

//--------------------------插入记录-------------------------------------// 数据挖掘工具

   doc.Range.InsertAfter(#13+"操作员:"+ G_username);//G_username为全局变量 数据挖掘研究院

  数据挖掘论坛

  数据挖掘论坛

end;   

  数据挖掘工具

以上有不足之处,望给予批评指正,本人E-MAILfree_card@163.com 数据挖掘研究院

[数据挖掘专家] [数据挖掘研究院] [数据挖掘论坛] [数据挖掘实验室]
上一篇:关于WEB应用程序的打印组件开发初探
下一篇:关于中文折行及相关问题的解决方法(taogou)
最新评论共有 0 位网友发表了评论 , 查看所有评论
发表评论( 不能超过250字,需审核,请自觉遵守互联网相关政策法规。 )
匿名?
数据挖掘网站导航 数据挖掘论坛导航
  • 数据挖掘工具
  • 数据挖掘论坛
  • DataCruncher - Cognos
  • MineSet - MathSoft
  • Intelligent Miner - GainSmarts
  • Sqlserver - SAS - Clementine
  • CART - Weka - WizSoft
  • NeuroShell - ModelQuest
  • data mining tools - Darwin
  • 数据挖掘交友
  • 数据挖掘博客
  • 数据挖掘工具
  • 数据挖掘资源
  • 数据挖掘技术算法
  • 数据挖掘相关期刊、会议
  • 研究院联盟合作专区
  • 数据挖掘基础与相关技术
  • 数据挖掘厂商与就业
  • 数据挖掘研究者乐园
  • 知名厂商数据挖掘工具资料
  • 国内数据挖掘实验室
  • Foreign Data Mining Lab
  • 热点关注
  • GDI+简介
  • COM与DCOM的区别与联系
  • 使用Delphi解析XML 文档
  • 如何设置delphi/cbuilder/BDE/MSSQL
  • BORLAND在“迫害”程序员?
  • 将image的图片保存为JPG格式图片方法
  • InstallShieldExpressfordelphi制作安装程
  • Real Programmers Use Pascal
  • 关于在COM中使用可选参数的研究
  • TStrings的AddObject方法应用
  • 论坛最新话题
  • Foundations of Statistical Natural Langu
  • Game Theory meet Data Mining: A Recent P
  • System Building: How does it help or hin
  • 数据挖掘与Clementine培训
  • 新手报到
  • 求 SASEM 客户流失预测分析
  • 数据挖掘工程师/搜索研究院—北京——无线
  • 数据挖掘入门介绍(如何着手数据挖掘)
  • Information Overload Survey Results
  • The INEX 2005 Workshop on Element Retrie
  • 相关资讯
  • BORLAND在“迫害”程序员?
  • 李维:我的回忆和一些有趣的事(精彩绝伦)
  • 李维看.net和DELPHI6(含李维照片)
  • 《代码大全》电子版1.01发布了
  • Real Programmers Use Pascal
  • Kylix安装手记
  • Borland与Microsoft关于Delphi的对话
  • InstallShieldExpressfordelphi制作安装程
  • 关于在COM中使用可选参数的研究
  • msagent经典用法
  • 数据挖掘实验室资料
  • 数据挖掘博客地址
  • 数据挖掘实验室网站地址
  • Prepare for Medicare audits by using dat
  • 注册成为SAS用户与爱好者俱乐部会员
  • 水南梅
  • 明日烟
  • 新人报道
  • 下载
  • 厦门服务器托管,450元/月—0592-5177319 高
  • 买空间送域名--0592-5177319 高静