加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Delphi中使用OLE方法操作Excel

发布时间:2020-12-15 09:56:29 所属栏目:大数据 来源:网络整理
导读:首先创建 Excel 对象,使用ComObj: var ExcelApp: Variant; ExcelApp := CreateOleObject( ′Excel.Application′ );?注意程序结束时释放变量 ExcelApp:=unassigned;?1 显示当前窗口: ExcelApp.Visible := True;?2 更改 Excel标题栏: ExcelApp.Caption :=

首先创建 Excel 对象,使用ComObj: var ExcelApp: Variant; ExcelApp := CreateOleObject( ′Excel.Application′ );?注意程序结束时释放变量 ExcelApp:=unassigned;?1 显示当前窗口: ExcelApp.Visible := True;?2 更改 Excel标题栏: ExcelApp.Caption := ′应用程序调用 Microsoft Excel′;?3 添加新工作簿: ExcelApp.WorkBooks.Add;?4 打开已存在的工作簿: ExcelApp.WorkBooks.Open( ′C:ExcelDemo.xls′ );?5 设置第2个工作表为活动工作表: ExcelApp.WorkSheets[2].Activate; 或?ExcelApp.WorksSheets[ ′Sheet2′ ].Activate;?? 添加工作表 ExcelApp.WorkSheets.add; 工作表重命名 ExcelApp.WorkSheets[1].Name:=′工?作表1′;?? 或者ExcelApp.WorkSheets[′Sheet1′].Name:=′工作表1′; 工作表数目?ExcelApp.WorkSheets.Count?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.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:ExcelDemo1.xls′ );?22 放弃存盘: ExcelApp.ActiveWorkBook.Saved := True;?23 关闭工作簿: ExcelApp.WorkBooks.Close;?24 退出Excel: ExcelApp.Quit;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读