哪位有delphi控制Excel(MSExcel对象)的完整手册,在下急用!
不胜感激!
推荐你一篇文章,其它的自己琢磨一下:
Delphi控制Excel自动生成报表
赵中凯 梅国建
2 Delphi控制Excel的方法
2。1 创建Excel文件
要在Delphi中控制Excel,就必须用到OLE自动化。 现在一般采用OLE2来创建OLE对象,当激活一个OLE对象时,服务器程序仅在容器程序内部激活,这就是所谓的“就地激活”(in-place activation)。
创建Excel文件时,先创建一个OLE对象,然后在对象中建立工作表worksheet,如函数createExcel所示:
function createExcel:variant;
var
v:variant...全部
推荐你一篇文章,其它的自己琢磨一下:
Delphi控制Excel自动生成报表
赵中凯 梅国建
2 Delphi控制Excel的方法
2。1 创建Excel文件
要在Delphi中控制Excel,就必须用到OLE自动化。
现在一般采用OLE2来创建OLE对象,当激活一个OLE对象时,服务器程序仅在容器程序内部激活,这就是所谓的“就地激活”(in-place activation)。
创建Excel文件时,先创建一个OLE对象,然后在对象中建立工作表worksheet,如函数createExcel所示:
function createExcel:variant;
var
v:variant;
sheet:variant;
begin
v:=createoleobject('Excel。
Application');//创建OLE对象
sible:=true;
d(-4167); //添加工作表
v。workbooks[1]。sheets[1]。name:='test';
sheet:=v。
workbooks[1]。sheets['test'];
return v;
end;
2。2 数据表格控制
Excel表格的控制,主要包括数据的导入、修改;单元格的合并、边框的控制;表格的复制、粘贴等。
当报表格式一定的情况下,表格的复制、粘贴显得尤为重要,这样,可以先制作一个文件模板,然后按照实际需要输出多页报表即可。
(1)数据的导入(importData)
procedure importData;
var
I,j:integer;
v:variant;
begin
v:=createExcel; //创建Excel文件test
for I:=0 to maxcolumn do
begin
for j:=0 to maxrow do
v。
workbooks[1]。sheets[1]。cells[I,j]:=I*j; //导入数据
end;
end;
(2)单元格的合并、边框的控制(lineStylecontrol)
单元格的合并,是在选定合并范围的情况下进行的。
边框控制可以操作边框线条的是否显示。其他方式的控制,可以仿照下面过程进行。
procedure lineStylecontrol;
var
v,sheet,range:variant;
begin
v:=createExecl;
sheet:= v。
workbooks[1]。sheets[1];
range:=sheet。range[sheet。cells[1,1],sheet。cells[39,30]];//选定表格
lect;
rge; //合并单元格
nestyle:=xlcontinuous; //置边框线可见
ze:=9; //改变表格内文本字体大小
end;
(3)表格的复制与粘贴(copyandPaste)
procedure copyandPaste;
var
v,sheet,range:variant;
begin
v:=createExecl;
sheet:= v。
workbooks[1]。sheets[1];
range:=sheet。range[sheet。cells[1,1],sheet。cells[39,30]];
lect; //选定要复制的表格
py; //复制选定的表格
sheet。
range[sheet。cells[40,1],sheet。cells[40,1]]。select; //选择要粘贴的位置
ste; //粘贴表格
end;
2。
3 文件的保存
文件保存是在创建文件的基础上进行的,过程saveFile说明了文件保存过程中应该注意的问题:
procedure saveFile;
var
sheet,v:variant;
begin
v:=createExcel;
if savedialog。
execute then
begin
v。workbooks[1]。saveas(savedialog。FileName);//保存文件
v。workbooks[1]。close; //关闭工作表
v。
quit; //关闭Excel
v := unassigned;
end;
end;
3 报表制作应注意的问题
(1)报表格式的选择
报表格式的选择对信息系统报表的实现方法起着决定性的影响。
如果在报表的格式要求比较严格的情况下,应当采用模板的方式产生报表。由于模板在数据导入之前就已经按照标准制定好,所以只要在程序中控制模板的复制与粘贴,然后编程实现数据输入指定位置即可。而对于报表格式多变的情况,由于数据的不同,需要合并单元格或者控制边框,可以直接在程序中自动控制报表的生成。
(2)打印
对于Excel报表的打印,最好不要在程序中进行控制,因为报表往往需要签字或者进行审查,有许多报表都包含平面图或示意图,为了有效的控制打印质量,最好通过程序控制输出或显示Excel文件,以便修改;另一个重要的原因是Excel具有强大的排版功能,而这正是选择Excel导出报表的重要原因。
(3)报表时间和表头
报表时间要有用户可以控制的输出。表头的制作要在事先做好格式,控制输出时,只改动那些诸如上报单位、下达单位、负责人等数据,这样既保证了系统的效率,又不失其实用性。
。收起