Delphi控制Excel2000心得

tiexinliu 2003-10-15 10:45:11
加精
类 别:COM & ActiveX
(一) 使用动态创建的方法
首先创建 Excel 对象,使用ComObj:
var ExcelApp: Variant;
ExcelApp := CreateOleObject( 'Excel.Application' );
1) 显示当前窗口:
ExcelApp.Visible := True;
2) 更改 Excel 标题栏:
ExcelApp.Caption := '应用程序调用 Microsoft Excel';
3) 添加新工作簿:
ExcelApp.WorkBooks.Add;
4) 打开已存在的工作簿:
ExcelApp.WorkBooks.Open( 'C:\Excel\Demo.xls' );
5) 设置第2个工作表为活动工作表:
ExcelApp.WorkSheets[2].Activate;

ExcelApp.WorksSheets[ 'Sheet2' ].Activate;
6) 给单元格赋值:
ExcelApp.Cells[1,4].Value := '第一行第四列';
7) 设置指定列的宽度(单位:字符个数),以第一列为例:
ExcelApp.ActiveSheet.Columns[1].ColumnsWidth := 5;
8) 设置指定行的高度(单位:磅)(1磅=0.035厘米),以第二行为例:
ExcelApp.ActiveSheet.Rows[2].RowHeight := 1/0.035; // 1厘米
9) 在第8行之前插入分页符:
ExcelApp.WorkSheets[1].Rows[8].PageBreak := 1;
10) 在第8列之前删除分页符:
ExcelApp.ActiveSheet.Columns[4].PageBreak := 0;
11) 指定边框线宽度:
ExcelApp.ActiveSheet.Range[ 'B3:D4' ].Borders[2].Weight := 3;
1-左 2-右 3-顶 4-底 5-斜( \ ) 6-斜( / )
12) 清除第一行第四列单元格公式:
ExcelApp.ActiveSheet.Cells[1,4].ClearContents;
13) 设置第一行字体属性:
ExcelApp.ActiveSheet.Rows[1].Font.Name := '隶书';
ExcelApp.ActiveSheet.Rows[1].Font.Color := clBlue;
ExcelApp.ActiveSheet.Rows[1].Font.Bold := True;
ExcelApp.ActiveSheet.Rows[1].Font.UnderLine := True;
14) 进行页面设置:
a.页眉:
ExcelApp.ActiveSheet.PageSetup.CenterHeader := '报表演示';
b.页脚:
ExcelApp.ActiveSheet.PageSetup.CenterFooter := '第&P页';
c.页眉到顶端边距2cm:
ExcelApp.ActiveSheet.PageSetup.HeaderMargin := 2/0.035;
d.页脚到底端边距3cm:
ExcelApp.ActiveSheet.PageSetup.HeaderMargin := 3/0.035;
e.顶边距2cm:
ExcelApp.ActiveSheet.PageSetup.TopMargin := 2/0.035;
f.底边距2cm:
ExcelApp.ActiveSheet.PageSetup.BottomMargin := 2/0.035;
g.左边距2cm:
ExcelApp.ActiveSheet.PageSetup.LeftMargin := 2/0.035;
h.右边距2cm:
ExcelApp.ActiveSheet.PageSetup.RightMargin := 2/0.035;
i.页面水平居中:
ExcelApp.ActiveSheet.PageSetup.CenterHorizontally := 2/0.035;
j.页面垂直居中:
ExcelApp.ActiveSheet.PageSetup.CenterVertically := 2/0.035;
k.打印单元格网线:
ExcelApp.ActiveSheet.PageSetup.PrintGridLines := True;
15) 拷贝操作:
a.拷贝整个工作表:
ExcelApp.ActiveSheet.Used.Range.Copy;
b.拷贝指定区域:
ExcelApp.ActiveSheet.Range[ 'A1:E2' ].Copy;
c.从A1位置开始粘贴:
ExcelApp.ActiveSheet.Range.[ 'A1' ].PasteSpecial;
d.从文件尾部开始粘贴:
ExcelApp.ActiveSheet.Range.PasteSpecial;
16) 插入一行或一列:
a. ExcelApp.ActiveSheet.Rows[2].Insert;
b. ExcelApp.ActiveSheet.Columns[1].Insert;
17) 删除一行或一列:
a. ExcelApp.ActiveSheet.Rows[2].Delete;
b. ExcelApp.ActiveSheet.Columns[1].Delete;
18) 打印预览工作表:
ExcelApp.ActiveSheet.PrintPreview;
19) 打印输出工作表:
ExcelApp.ActiveSheet.PrintOut;
20) 工作表保存:
if not ExcelApp.ActiveWorkBook.Saved then
ExcelApp.ActiveSheet.PrintPreview;
21) 工作表另存为:
ExcelApp.SaveAs( 'C:\Excel\Demo1.xls' );
22) 放弃存盘:
ExcelApp.ActiveWorkBook.Saved := True;
23) 关闭工作簿:
ExcelApp.WorkBooks.Close;
24) 退出 Excel:
ExcelApp.Quit;







...全文
104 67 打赏 收藏 转发到动态 举报
写回复
用AI写文章
67 条回复
切换为时间正序
请发表友善的回复…
发表回复
1nsc 2004-03-04
  • 打赏
  • 举报
回复
我这有原码.到绿盟编程找答案吗?快!特快,科技http://www.0mai.com/bbs/改版了上就有机会中奖。关有大量源程序下载!
popmailzjw 2004-02-25
  • 打赏
  • 举报
回复
up
readersm68 2004-02-04
  • 打赏
  • 举报
回复
收藏
flourish 2004-02-03
  • 打赏
  • 举报
回复
收藏
loswing 2004-01-14
  • 打赏
  • 举报
回复
mark
tiexinliu 2004-01-09
  • 打赏
  • 举报
回复
Delphi中控制Excel技巧全演示:
包括建book,建sheet,合计,启动宏,打印等技巧
delphi7,win2000中编译通过

http://www.delphiun.com/dispdoc.asp?id=353
lcf79001 2003-10-29
  • 打赏
  • 举报
回复
来晚了!

也顶!
jijun 2003-10-21
  • 打赏
  • 举报
回复
好东东
tiexinliu 2003-10-21
  • 打赏
  • 举报
回复
揭贴了!!!
疯狂低调 2003-10-21
  • 打赏
  • 举报
回复
Up
好东东,当然应该收藏了
mib3000 2003-10-21
  • 打赏
  • 举报
回复
请问楼主如何把EXCEL表格中的数据导入到TStringGrid
jygzym 2003-10-20
  • 打赏
  • 举报
回复
收藏
tiexinliu 2003-10-20
  • 打赏
  • 举报
回复
不知道,那位兄弟帮忙解决????
ivychoi0519 2003-10-20
  • 打赏
  • 举报
回复
感谢楼主!!
请问有如何检测EXCEL表格中是否存在数据透视表或统计作图,表中统计的细节是否可以导出?
angelior 2003-10-19
  • 打赏
  • 举报
回复
收藏
redcola 2003-10-19
  • 打赏
  • 举报
回复
好东西,谢谢
hongjg 2003-10-19
  • 打赏
  • 举报
回复
(二) 使用Delphi 控件方法
是delphi7的吗?我用delphi6编译不了啊,变化好多。
ly_liuyang 2003-10-18
  • 打赏
  • 举报
回复
用ExcelExport就简单很多了
xiaofei7569 2003-10-18
  • 打赏
  • 举报
回复
好,收藏。
sum008 2003-10-18
  • 打赏
  • 举报
回复
ExcelWorksheet1.Shapes.Item(i)

EXCEL里的图片。
加载更多回复(47)
滴答表格控件企业版功能介绍 滴答表格企业版 是一款面向软件设计人员的表格控件, 拥有 600 多个编程接口, 功能丰富、简单易用,集成了表格产品编辑输入、公式运算、数据显示/展现的特点,同时又兼顾了报表产品的数据源绑定,数据统计和打印输出的功能,是管理软件模板化开发必不可少的组件产品。 1、模板化开发的编程理念 2、功能强大 简单易用 3、提供快速报表设计器 4、提供个性化定制功能服务 5、支持Windows平台下任何开发工具 6、支持绑定数据库及外部数据源 7、支持外部数据的导入导出 8、一流的技术支持服务 9、持续地产品升级服务 10、丰富的研发资料和产品示例 11、无限分发 模板化开发的编程理念 当今企业的业务需求复杂多变,对软件的通用性要求越来越高,造成开发周期过长,给软件项目带来不可预知的风险,同时大大降低 了软件企业的利润空间,而滴答表格企业版正是为解决这些问题而推出的一款基于模板化开发的表格控件。软件工程师通过调用滴答 表格的接口,快速实现自定义模板(单据)及报表,将用户个性化的要求转变成由最终用户自行设计,并创建出适合自己的模板,而 不再需要通过软件工程师的编程实现。最终提高软件的通用性和开发周期。 功能强大 简单易用 答表格目前拥有600多个直接编程接口,几十个子对象,集成了表格控件的编辑展现、公式运算功能,同时又拥有报表组件的数据源绑 定、外部数据的导入导出等功能;滴答表格的接口简单易用,类似打开/保存文件,打印,预览,导入导出等功能只要一条语句即可完 成; 提供快速报表设计器 在提供强大表格控件的同时,我们又为用户提供功能丰富的设计器;软件工程师或最终用户可以通过设计器快速完成模板的设计,而 不再需要通过编程实现模板的样式;同时我们还向正式用户提供设计器源的源码,用户可以根据自己的需要修改设计器,并无限制分 发,与我们共享设计器的版权! 提供个性化定制功能服务 我们采用从Windows底层绘图的技术,从无到有绘制出表格,而不基于任何其它第三方或开发工具自带的控件,在扩展性上更加灵活和 强大;在一些特定行业,如果最终用户要求实现某种特定的功能,也可以与我们协商,共同完成用户的个性化功能,从而保证软件业 务的顺利进行! 支持Windows平台下任何开发工具 滴答表格控件基于WINDOWS的ActiveX技术,可以运行在WINDOWS下的任何开发工具,比如.NET,VB,DELPHI,PB,易语言等,同时也可 以运行在WEB上,用户通过VBS或JS进行操作产品;另一方面,用户不需要担心因更换开发工具,而不能正常使用控件的情况! 支持绑定数据库及外部数据源 我们建立了自身的数据挖掘引擎,通过识别用户的报表模板,从数据库中挖掘出相应的数据,并按模板中预定格式展现在控件上,而 这一切无需通过编程实现;除了控件本身的数据挖掘引擎,我们还支持外部的ADO数据源,更加扩展用户的报表功能;目前我们的数据 挖掘引擎支持Oracle、SQLServer、DB2、MySql、ACCESS等; 支持外部数据的导入导出 您只需要一条语句即可实现与其它应用程序的数据交互,包括PDF、EXCEL、CSV、图片,同时您还可以精确导入EXCEL文件,支持单个和 批量文件转换; 一流的技术支持服务 为了帮助新用户快速入门和老用户开发过程中的问题,我们提供优质技术支持服务,用户可以通过电话、电子邮件、技术论坛、QQ或 上门培训等方式进行支持;同时我们还向用户提供开发咨询,共享编程心得,让您得到的不仅是一款优质的产品,更是一份家的温暖! 持续地产品升级服务 为了不断满足各种用户群的需求,我们归纳问题、总结需求,为用户提供持续不断的产品升级服务,让您的产品更加充满生命力! 丰富的研发资料和产品示例 成为滴答表格企业版的用户,您就将成为市场的领先者。您将对掌握这一领先科技充满自信,这其中包括我们和数千名用户超过三年 的经验积累,而这些,您都可以通过在线的论坛、技术文档、产品示例、QQ以及邮件等方式轻松获得。
滴答表格控件专业版功能介绍 滴答表格专业版 是一款面向个人软件作者的表格控件。她集模板化开发、公式运算、数据显示/展现于一体,同时也具备了报表产品的数据源绑定,数据统计和打印输出的功能,并开放了柱状图表应用功能,帮助个人软件作者灵活快速地响应软件需求变化,是个人软件作者的首选组件产品。 1、模板化开发的编程理念 2、功能强大 简单易用 3、提供快速报表设计器 4、提供个性化定制功能服务 5、支持Windows平台下任何C/S开发工具 6、支持绑定数据库及外部数据源 7、支持外部数据的导入导出 8、一流的技术支持服务 9、持续地产品升级服务 10、丰富的研发资料和产品示例 11、无限分发 1.模板化开发的编程理念 当今企业的业务需求复杂多变,对软件的通用性要求越来越高,造成开发周期过长,给软件项目带来不可预知的风险,同时大大降低了软件企业的利润空间,而滴答表格专业版正是为解决这些问题而推出的一款基于模板化开发的表格控件。软件工程师通过调用滴答表格的接口,快速实现自定义模板(单据)及报表,将用户个性化的要求转变成由最终用户自行设计,并创建出适合自己的模板,而不再需要通过软件工程师的编程实现。最终提高软件的通用性和开发周期。 2.功能强大 简单易用 滴答表格目前拥有600多个直接编程接口,几十个子对象,集成了表格控件的编辑展现、公式运算功能,同时又拥有报表组件的数据源绑定、外部数据的导入导出等功能;滴答表格的接口简单易用,类似打开/保存文件,打印,预览,导入导出等功能只要一条语句即可完成; 3.提供快速报表设计器 在提供强大表格控件的同时,我们又为用户提供功能丰富的设计器;软件工程师或最终用户可以通过设计器快速完成模板的设计,而不再需要通过编程实现模板的样式;同时我们还向正式用户提供设计器源的源码,用户可以根据自己的需要修改设计器,并无限制分发,与我们共享设计器的版权! 4.提供个性化定制功能服务 我们采用从Windows底层绘图的技术,从无到有绘制出表格,而不基于任何其它第三方或开发工具自带的控件,在扩展性上更加灵活和强大;在一些特定行业,如果最终用户要求实现某种特定的功能,也可以与我们协商,共同完成用户的个性化功能,从而保证软件业务的顺利进行! 5.支持Windows平台下任何开发工具 滴答表格控件基于WINDOWS的ActiveX技术,可以运行在WINDOWS下的任何开发工具,比如.NET,VB,DELPHI,PB,易语言等,但不支持WEB应用;另一方面,用户不需要担心因更换开发工具,而不能正常使用控件的情况! 6.支持绑定数据库及外部数据源 我们建立了自身的数据挖掘引擎,通过识别用户的报表模板,从数据库中挖掘出相应的数据,并按模板中预定格式展现在控件上,而这一切无需通过编程实现;除了控件本身的数据挖掘引擎,我们还支持外部的ADO数据源,更加扩展用户的报表功能;目前我们的数据挖掘引擎支持Oracle、SQLServer、DB2、MySql、ACCESS等; 7.支持外部数据的导入导出 您只需要一条语句即可实现与其它应用程序的数据交互,包括PDF、EXCEL、CSV、图片,同时您还可以精确导入EXCEL文件,支持单个和批量文件转换; 8.一流的技术支持服务 为了帮助新用户快速入门和老用户开发过程中的问题,我们提供优质技术支持服务,用户可以通过电话、电子邮件、技术论坛、QQ或上门培训等方式进行支持;同时我们还向用户提供开发咨询,共享编程心得,让您得到的不仅是一款优质的产品,更是一份家的温暖! 9.持续地产品升级服务 为了不断满足各种用户群的需求,我们归纳问题、总结需求,为用户提供持续不断的产品升级服务,让您的产品更加充满生命力! 10.丰富的研发资料和产品示例 成为滴答表格专业版的用户,您就将成为市场的领先者。您将对掌握这一领先科技充满自信,这其中包括我们和数千名用户超过三年的经验积累,而这些,您都可以通过在线的论坛、技术文档、产品示例、QQ以及邮件等方式轻松获得。 11.无限分发 购买一次滴答表格专业版,您就可以进行无限次产品开发,无限次最终产品分发和应用,而这一切不再需要额外的成本支出。同时您还将享受一年内任何版本的免费升级,而不局限于某个单一版本的使用!

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧