




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
看看这个就知道了:全面控制Excel首先创建Excel对象,使用ComObj:varExcelID:Variant;ExcelID:=CreateOleObject(Excel.Application);1)显示当前窗口:ExcelID.Visible:=True;2)更改Excel标题栏:ExcelID.Caption:=应用程序调用MicrosoftExcel;3)添加新工作簿:ExcelID.WorkBooks.Add;4)打开已存在的工作簿:ExcelID.WorkBooks.Open(C:ExcelDemo.xls);5)设置第2个工作表为活动工作表:ExcelID.WorkSheets2.Activate;或ExcelID.WorksSheetsSheet2.Activate;6)给单元格赋值:ExcelID.Cells1,4.Value:=第一行第四列;7)设置指定列的宽度(单位:字符个数),以第一列为例:ExcelID.ActiveSheet.Column1.ColumnsWidth:=5;8)设置指定行的高度(单位:磅)(1磅0.035厘米),以第二行为例:ExcelID.ActiveSheet.Rows2.RowHeight:=1/0.035;/1厘米9)在第8行之前插入分页符:ExcelID.WorkSheets1.Rows8.PageBreak:=1;10)在第8列之前删除分页符:ExcelID.ActiveSheet.Columns4.PageBreak:=0;11)指定边框线宽度:ExcelID.ActiveSheet.RangeB3:D4.Borders2.Weight:=3;1-左2-右3-顶4-底5-斜()6-斜(/)12)清除第一行第四列单元格公式:ExcelID.ActiveSheet.Cells1,4.ClearContents;13)设置第一行字体属性:ExcelID.ActiveSheet.Rows1.Font.Name:=隶书;ExcelID.ActiveSheet.Rows1.Font.Color:=clBlue;ExcelID.ActiveSheet.Rows1.Font.Bold:=True;ExcelID.ActiveSheet.Rows1.Font.UnderLine:=True;14)进行页面设置:a.页眉:ExcelID.ActiveSheet.PageSetup.CenterHeader:=报表演示;b.页脚:ExcelID.ActiveSheet.PageSetup.CenterFooter:=第&P页;c.页眉到顶端边距2cm:ExcelID.ActiveSheet.PageSetup.HeaderMargin:=2/0.035;d.页脚到底端边距3cm:ExcelID.ActiveSheet.PageSetup.HeaderMargin:=3/0.035;e.顶边距2cm:ExcelID.ActiveSheet.PageSetup.TopMargin:=2/0.035;f.底边距2cm:ExcelID.ActiveSheet.PageSetup.BottomMargin:=2/0.035;g.左边距2cm:ExcelID.ActiveSheet.PageSetup.LeftMargin:=2/0.035;h.右边距2cm:ExcelID.ActiveSheet.PageSetup.RightMargin:=2/0.035;i.页面水平居中:ExcelID.ActiveSheet.PageSetup.CenterHorizontally:=2/0.035;j.页面垂直居中:ExcelID.ActiveSheet.PageSetup.CenterVertically:=2/0.035;k.打印单元格网线:ExcelID.ActiveSheet.PageSetup.PrintGridLines:=True;15)拷贝操作:a.拷贝整个工作表:ExcelID.ActiveSheet.Used.Range.Copy;b.拷贝指定区域:ExcelID.ActiveSheet.RangeA1:E2.Copy;c.从A1位置开始粘贴:ExcelID.ActiveSheet.Range.A1.PasteSpecial;d.从文件尾部开始粘贴:ExcelID.ActiveSheet.Range.PasteSpecial;16)插入一行或一列:a.ExcelID.ActiveSheet.Rows2.Insert;b.ExcelID.ActiveSheet.Columns1.Insert;17)删除一行或一列:a.ExcelID.ActiveSheet.Rows2.Delete;b.ExcelID.ActiveSheet.Columns1.Delete;18)打印预览工作表:ExcelID.ActiveSheet.PrintPreview;19)打印输出工作表:ExcelID.ActiveSheet.PrintOut;20)工作表保存:ifnotExcelID.ActiveWorkBook.SavedthenExcelID.ActiveSheet.PrintPreview;21)工作表另存为:ExcelID.SaveAs(C:ExcelDemo1.xls);22)放弃存盘:ExcelID.ActiveWorkBook.Saved:=True;23)关闭工作簿:ExcelID.WorkBooks.Close;24)退出Excel:ExcelID.Quit;有很多类似的问题了。再贴一次吧。procedureTForm1.Button5Click(Sender:TObject);varExcelApp,MyWorkBook,mysheet:Variant;i:byte;s:string;begintryExcelApp:=CreateOleObject(Excel.Application);MyWorkBook:=CreateOleobject(Excel.Sheet);/?MyWorkBook:=ExcelApp.workbooks.open(C:Book1.xls);exceptonExceptiondoraiseexception.Create(无法打开Xls文件,请确认已经安装EXCEL)end;ExcelApp.Visible:=true;/?mysheet:=MyWorkBook.WorkS;MyworkBook:=ExcelApp.workBooks.Add;/在此处插入读数据库及写Excel文档的代码/其中写Excel文档的关键语句如下:Myworkbook.worksheets1.rangeA1:D1.Merge(True);Myworkbook.worksheets1.rangeA1:D2.HorizontalAlignment:=$FFFFEFF4;MyWorkBook.WorkSheets1.Cells1,1.Value:=YourTitle;i:=2;MyWorkBook.WorkSheets1.Cellsi,1.Value:=yourCaption1;MyWorkBook.WorkSheets1.Cellsi,2.Value:=yourCaption2;MyWorkBook.WorkSheets1.Cellsi,3.Value:=yourCaption3;MyWorkBook.WorkSheets1.Cellsi,4.Value:=yourCaption4;Myworkbook.worksheets1.RangeA1:D2.Font.Color:=clBlue;Myworkbook.worksheets1.RangeA1:D1.Font.Name:=隶书;Myworkbook.worksheets1.RangeA1:D1.Font.Size:=18;i:=3;table1.close;table1.open;table1.First;whilenottable1.eofdobeginMyWorkBook.WorkSheets1.Cellsi,1.Value:=table1.FieldByName(au_id).AsString;MyWorkBook.WorkSheets1.Cellsi,2.Value:=table1.FieldByName(royaltyper).AsInteger;MyWorkBook.WorkSheets1.Cellsi,3.Value:=table1.FieldByName(au_ord).AsInteger;MyWorkBook.WorkSheets1.Cellsi,4.Value:=table1.FieldByName(title_id).AsString;Inc(i);table1.Nextend;ExcelApp.Visible:=true;s:=A3:D+IntToStr(i-1);/设定字体.栏宽等s:=A1:D+IntToStr(i-1);Myworkbook.worksheets1.Columns1.ColumnWidth:=20;Myworkbook.worksheets1.Columns4.ColumnWidth:=25;Myworkbook.worksheets1.Rows1.RowHeight:=50;Myworkbook.worksheets1.Rows1.VerticalAlignment:=$FFFFEFF4;Myworkbook.worksheets1.Ranges.Font.Name:=仿宋;s:=A2:D+IntToStr(i-1);Myworkbook.worksheets1.Ranges.Borders.LineStyle:=1;/页面设置MyworkBook.WorkSheets1.PageSetup.CenterHorizontally:=true;Myworkbook.worksheets1.pagesetup.PrintTitleRows:=A1;/不能设置papersize属性,原因不明/MyworkBook.WorkSheets1.PageSetup.PaperSize:=$9;tryMyWorkBook.saveas(c:+Edit1.Text+.xls);MyWorkBook.close;except/当存为一个已有的文档而又不覆盖时将MyWorkBook.close;/产生一个例外end;ExcelApp.Quit;ExcelApp:=Unassigned;/释放VARIANT变量end;Delphi & Excel的所有使用方法 一) 使用动态创建的方法 首先创建 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:ExcelDemo.xls ); 5) 设置第2个工作表为活动工作表: ExcelApp.WorkSheets2.Activate; 或 ExcelApp.WorksSheets Sheet2 .Activate; 6) 给单元格赋值: ExcelApp.Cells1,4.value := 第一行第四列; 7) 设置指定列的宽度(单位:字符个数),以第一列为例: ExcelApp.ActiveSheet.Columns1.ColumnsWidth := 5; 8) 设置指定行的高度(单位:磅)(1磅0.035厘米),以第二行为例: ExcelApp.ActiveSheet.Rows2.RowHeight := 1/0.035; / 1厘米 9) 在第8行之前插入分页符: ExcelApp.WorkSheets1.Rows.PageBreak := 1; 10) 在第8列之前删除分页符: ExcelApp.ActiveSheet.Columns4.PageBreak := 0; 11) 指定边框线宽度: ExcelApp.ActiveSheet.Range B3:D4 .Borders2.Weight := 3; 1-左 2-右 3-顶 4-底 5-斜( ) 6-斜( / ) 12) 清除第一行第四列单元格公式: ExcelApp.ActiveSheet.Cells1,4.ClearContents; 13) 设置第一行字体属性: ExcelApp.ActiveSheet.Rows1.Font.Name := 隶书; ExcelApp.ActiveSheet.Rows1.Font.Color := clBlue; ExcelApp.ActiveSheet.Rows1.Font.Bold := True; ExcelApp.ActiveSheet.Rows1.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.Rows2.Insert; b. ExcelApp.ActiveSheet.Columns1.Insert; 17) 删除一行或一列: a. ExcelApp.ActiveSheet.Rows2.Delete; b. ExcelApp.ActiveSheet.Columns1.Delete; 18) 打印预览工作表: ExcelApp.ActiveSheet.PrintPreview; 19) 打印输出工作表: ExcelApp.ActiveSheet.PrintOut; 20) 工作表保存: if not ExcelApp.ActiveWorkBook.Saved then ExcelApp.ActiveSheet.PrintPreview; 21) 工作表另存为: ExcelApp.SaveAs( C:ExcelDemo1.xls ); 22) 放弃存盘: ExcelApp.ActiveWorkBook.Saved := True; 23) 关闭工作簿: ExcelApp.WorkBooks.Close; 24) 退出 Excel: ExcelApp.Quit; (二) 使用Delphi 控件方法在Form中分别放入ExcelApplication, ExcelWorkbook和ExcelWorksheet。 1) 打开Excel ExcelApplication1.Connect; 2) 显示当前窗口: ExcelApplication1.Visible0:=True; 3) 更改 Excel 标题栏: ExcelApplication1.Caption := 应用程序调用 Microsoft Excel; 4) 添加新工作簿: ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks.Add(EmptyParam,0); 5) 添加新工作表: var Temp_Worksheet: _WorkSheet; begin Temp_Worksheet:=ExcelWorkbook1. WorkSheets.Add(EmptyParam,EmptyParam,EmptyParam,EmptyParam,0) as _WorkSheet; ExcelWorkSheet1.ConnectTo(Temp_WorkSheet); End; 6) 打开已存在的工作簿: ExcelApplication1.Workbooks.Open (c:a.xls EmptyParam,EmptyParam,EmptyParam,EmptyParam, EmptyParam,EmptyParam,EmptyParam,EmptyParam, EmptyParam,EmptyParam,EmptyParam,EmptyParam,0) 7) 设置第2个工作表为活动工作表: ExcelApplication1.WorkSheets2.Activate; 或 ExcelApplication1.WorksSheets Sheet2 .Activate; 8) 给单元格赋值: ExcelApplication1.Cells1,4.value := 第一行第四列; 9) 设置指定列的宽度(单位:字符个数),以第一列为例: ExcelApplication1.ActiveSheet.Columns1.ColumnsWidth := 5; 10) 设置指定行的高度(单位:磅)(1磅0.035厘米),以第二行为例: ExcelApplication1.ActiveSheet.Rows2.RowHeight := 1/0.035; / 1厘米 11) 在第8行之前插入分页符: ExcelApplication1.WorkSheets1.Rows.PageBreak := 1; 12) 在第8列之前删除分页符: ExcelApplication1.ActiveSheet.Columns4.PageBreak := 0; 13) 指定边框线宽度: ExcelApplication1.ActiveSheet.Range B3:D4 .Borders2.Weight := 3; 1-左 2-右 3-顶 4-底 5-斜( ) 6-斜( / ) 14) 清除第一行第四列单元格公式: ExcelApplication1.ActiveSheet.Cells1,4.ClearContents; 15) 设置第一行字体属性: ExcelApplication1.ActiveSheet.Rows1.Font.Name := 隶书; ExcelApplication1.ActiveSheet.Rows1.Font.Color := clBlue; ExcelApplication1.ActiveSheet.Rows1.Font.Bold := True; ExcelApplication1.ActiveSheet.Rows1.Font.UnderLine := True; 16) 进行页面设置: a.页眉: ExcelApplication1.ActiveSheet.PageSetup.CenterHeader := 报表演示; b.页脚: ExcelApplication1.ActiveSheet.PageSetup.CenterFooter := 第&P页; c.页眉到顶端边距2cm: ExcelApplication1.ActiveSheet.PageSetup.HeaderMargin := 2/0.035; d.页脚到底端边距3cm: ExcelApplication1.ActiveSheet.PageSetup.HeaderMargin := 3/0.035; e.顶边距2cm: ExcelApplication1.ActiveSheet.PageSetup.TopMargin := 2/0.035; f.底边距2cm: ExcelApplication1.ActiveSheet.PageSetup.BottomMargin := 2/0.035; g.左边距2cm: ExcelApplication1.ActiveSheet.PageSetup.LeftMargin := 2/0.035; h.右边距2cm: ExcelApplication1.ActiveSheet.PageSetup.RightMargin := 2/0.035; i.页面水平居中: ExcelApplication1.ActiveSheet.PageSetup.CenterHorizontally := 2/0.035; j.页面垂直居中: ExcelApplication1.ActiveSheet.PageSetup.CenterVertically := 2/0.035; k.打印单元格网线: ExcelApplication1.ActiveSheet.PageSetup.PrintGridLines := True; 17) 拷贝操作: a.拷贝整个工作表: ExcelApplication1.ActiveSheet.Used.Range.Copy; b.拷贝指定区域: ExcelApplication1.ActiveSheet.Range A1:E2 .Copy; c.从A1位置开始粘贴: ExcelApplication1.ActiveSheet.Range. A1 .PasteSpecial; d.从文件尾部开始粘贴: ExcelApplication1.ActiveSheet.Range.PasteSpecial; 18) 插入一行或一列: a. ExcelApplication1.ActiveSheet.Rows2.Insert; b. ExcelApplication1.ActiveSheet.Columns1.Insert; 19) 删除一行或一列: a. ExcelApplication1.ActiveSheet.Rows2.Delete; b. ExcelApplication1.ActiveSheet.Columns1.Delete; 20) 打印预览工作表: ExcelApplication1.ActiveSheet.PrintPreview; 21) 打印输出工作表: ExcelApplication1.ActiveSheet.PrintOut; 22) 工作表保存: if not ExcelApplication1.ActiveWorkBook.Saved then ExcelApplication1.ActiveSheet.PrintPreview; 23) 工作表另存为: ExcelApplication1.SaveAs( C:ExcelDemo1.xls ); 24) 放弃存盘: ExcelApplication1.ActiveWorkBook.Saved := True; 25) 关闭工作簿: ExcelApplication1.WorkBooks.Close; 26) 退出 Excel: ExcelApplication1.Quit; ExcelApplication1.Disconnect; (三) 使用Delphi 控制Excle二维图在Form中分别放入ExcelApplication, ExcelWorkbook和ExcelWorksheet var asheet1,achart, range:variant; 1)选择当第一个工作薄第一个工作表 asheet1:=ExcelApplication1.Workbooks1.Worksheets1; 2)增加一个二维图 achart:=asheet1.chartobjects.add(100,100,200,200); 3)选择二维图的形态 achart.chart.charttype:=4; 4)给二维图赋值 series:=achart.chart.seriescollection; range:=sheet1!r2c3:r3c9; series.add(range,true); 5)加上二维图的标题 achart.Chart.HasTitle:=True; achart.Chart.ChartTitle.Characters.Text:= Excle二维图 文/赵中凯 梅国建 摘 要:Excel是当前最流行的数据报表制作工具。本文介绍如何使用Delphi来控制Excel完成数据库与报表之间的数据交换,讨论了报表制作工程中的一些细节性问题。 关键字:Delphi,Excel,报表 引言 美女啦啦队招募中 纵情享受人生第一乐趣 新浪招商引资征代理商 上网实用手册 数据报表作为企事业单位上报和下达的重要信息载体,随着信息化建设的不断推进,在实际的工作中得到了前所未有的应用。因此,数据报表已经成为管理信息系统中重要的一项功能,并且,由于数据的多样性和统计信息的增加,数据报表的系统实现变得越来越复杂。 Delphi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年音乐专业考级考试试卷及答案全解析
- 2025年音乐教育与艺术表达能力测试卷及答案
- 2025年艺术设计专业入学考试卷及答案解析
- 2025年教育管理与领导力硕士入学考核试卷
- 2025年健康管理师考试试题及答案
- 2025年环境保护法专业研究生入学考试试卷及答案
- 2025年护理管理与实践能力测试题及答案
- 2025年公共艺术与文化传播专业综合能力测试题及答案
- 物资装备使用管理制度
- 特价餐饮设备管理制度
- 化工风险辨识培训
- 水电站机电设备拆除施工方案
- 防溺水幼儿园安全教育课件
- 全球半导体制造类EDA行业白皮书-沙利文-2024
- 理论力学(周衍柏第三版)思考题+习题答案
- 拜占庭历史与文化知到智慧树章节测试课后答案2024年秋南开大学
- 2024-2030年中国LNG加气站行业十三五规划及项目可行性分析报告
- 脚手架安全事故案例及总结
- 2024年-2025年农作物植保员职业技能考试题库(含答案)
- 物理-2025年中考终极押题猜想(广州专用)(解析版)
- 【MOOC】机械设计-华中科技大学 中国大学慕课MOOC答案
评论
0/150
提交评论