Delphi控制Excel操作全集.docx

上传人:b****3 文档编号:4346724 上传时间:2022-11-30 格式:DOCX 页数:13 大小:21.31KB
下载 相关 举报
Delphi控制Excel操作全集.docx_第1页
第1页 / 共13页
Delphi控制Excel操作全集.docx_第2页
第2页 / 共13页
Delphi控制Excel操作全集.docx_第3页
第3页 / 共13页
Delphi控制Excel操作全集.docx_第4页
第4页 / 共13页
Delphi控制Excel操作全集.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

Delphi控制Excel操作全集.docx

《Delphi控制Excel操作全集.docx》由会员分享,可在线阅读,更多相关《Delphi控制Excel操作全集.docx(13页珍藏版)》请在冰豆网上搜索。

Delphi控制Excel操作全集.docx

Delphi控制Excel操作全集

Delphi控制Excel2000操作全集

十分值得收藏的咚咚,对认为有用的人很有用,呵呵

-----------------------------------------

Delphi控制Excel2000

希望这分数据,为论坛中的各位会员关于EXCEL操作的问题提供一些帮助。

同时也希望各位能将自己整理的、或已有的资料共享出来。

这样可以减少大家的「重复劳动」吗?

技术在于交流,经验在于积累!

一.使用动态创建的方法

首先创建Excel对象,使用ComObj:

varExcelApp:

Variant;

ExcelApp:

=CreateOleObject('Excel.Application');

1)显示当前窗口:

ExcelApp.Visible:

=True;

2)更改Excel标题栏:

ExcelApp.Caption:

='应用程序调用MicrosoftExcel';

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

4'].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:

='第&

页';

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)工作表保存:

ifnotExcelApp.ActiveWorkBook.Savedthen

ExcelApp.ActiveSheet.PrintPreview;

21)工作表另存为:

ExcelApp.SaveAs('C:

\Excel\Demo1.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.Visible[0]:

=True;

3)更改Excel标题栏:

ExcelApplication1.Caption:

='应用程序调用MicrosoftExcel';

4)添加新工作簿:

ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks.Add(EmptyParam,0));

5)添加新工作表:

varTemp_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.WorkSheets[2].Activate;或

ExcelApplication1.WorksSheets['Sheet2'].Activate;

8)给单元格赋值:

ExcelApplication1.Cells[1,4].Value:

='第一行第四列';

9)设置指定列的宽度(单位:

字符个数),以第一列为例:

ExcelApplication1.ActiveSheet.Columns[1].ColumnsWidth:

=5;

10)设置指定行的高度(单位:

磅)(1磅=0.035厘米),以第二行为例:

ExcelApplication1.ActiveSheet.Rows[2].RowHeight:

=1/0.035;//1厘米

11)在第8行之前插入分页符:

ExcelApplication1.WorkSheets[1].Rows[8].PageBreak:

=1;

12)在第8列之前删除分页符:

ExcelApplication1.ActiveSheet.Columns[4].PageBreak:

=0;

13)指定边框线宽度:

ExcelApplication1.ActiveSheet.Range['B3

4'].Borders[2].Weight:

=3;

1-左2-右3-顶4-底5-斜(\)6-斜(/)

14)清除第一行第四列单元格公式:

ExcelApplication1.ActiveSheet.Cells[1,4].ClearContents;

15)设置第一行字体属性:

ExcelApplication1.ActiveSheet.Rows[1].Font.Name:

='隶书';

ExcelApplication1.ActiveSheet.Rows[1].Font.Color:

=clBlue;

ExcelApplication1.ActiveSheet.Rows[1].Font.Bold:

=True;

ExcelApplication1.ActiveSheet.Rows[1].Font.UnderLine:

=True;

16)进行页面设置:

a.页眉:

ExcelApplication1.ActiveSheet.PageSetup.CenterHeader:

='报表演示';

b.页脚:

ExcelApplication1.ActiveSheet.PageSetup.CenterFooter:

='第&

页';

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.Rows[2].Insert;

b.ExcelApplication1.ActiveSheet.Columns[1].Insert;

19)删除一行或一列:

a.ExcelApplication1.ActiveSheet.Rows[2].Delete;

b.ExcelApplication1.ActiveSheet.Columns[1].Delete;

20)打印预览工作表:

ExcelApplication1.ActiveSheet.PrintPreview;

21)打印输出工作表:

ExcelApplication1.ActiveSheet.PrintOut;

22)工作表保存:

ifnotExcelApplication1.ActiveWorkBook.Savedthen

ExcelApplication1.ActiveSheet.PrintPreview;

23)工作表另存为:

ExcelApplication1.SaveAs('C:

\Excel\Demo1.xls');

24)放弃存盘:

ExcelApplication1.ActiveWorkBook.Saved:

=True;

25)关闭工作簿:

ExcelApplication1.WorkBooks.Close;

26)退出Excel:

ExcelApplication1.Quit;

ExcelApplication1.Disconnect;

三.使用Delphi控制Excle二维图

在Form中分别放入ExcelApplication,ExcelWorkbook和ExcelWorksheet

varasheet1,achart,range:

variant;

1)选择当第一个工作薄第一个工作表

asheet1:

=ExcelApplication1.Workbooks[1].Worksheets[1];

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二维图』

6)

我是这样写的:

vari,j:

integer;

ii:

string;

begin

ExcelApplication1.Visible[0]:

=True;

ExcelApplication1.Caption:

='ExcelApplication';

try

ExcelApplication1.Workbooks.Open(ExtractFilePath(paramstr(0))+'文件名.xls',

null,null,null,null,null,null,null,null,null,null,null,null,0);//获取当前路径下的文件并且打开

except

ExcelApplication1.Disconnect;//出现异常情况时关闭

ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks[1]);//ExcelWorkbook1与Eexcelapplication1建立连接

ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Worksheets[1]as_Worksheet);//Excelworksheet1与Excelworkbook1建立连接

fr_jjfenxi.Label3.Caption:

='ExcelWorksheet1.Cells.Item[3,1]';

//ExcelApplication1.WorkBooks1.Close;

ExcelApplication1.Disconnect;

ExcelApplication1.Quit;

但是label3却不能显示第三行,第一列中的数据。

请各位指点!

附说明:

一)使用动态创建的方法

首先创建Excel对象,使用ComObj:

varExcelApp:

Variant;

ExcelApp:

=CreateOleObject('Excel.Application');

1)显示当前窗口:

ExcelApp.Visible:

=True;

2)更改Excel标题栏:

ExcelApp.Caption:

='应用程序调用MicrosoftExcel';

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.PageBreak:

=1;

10)在第8列之前删除分页符:

ExcelApp.ActiveSheet.Columns[4].PageBreak:

=0;

11)指定边框线宽度:

ExcelApp.ActiveSheet.Range['B3

4'].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:

='第&

页';

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.拷贝指定区域:

Exce

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1