请教TExcelWorkSheet的用法(50分)

9

954ken

Unregistered / Unconfirmed
GUEST, unregistred user!
如下代码:
procedure TForm1.Button1Click(Sender: TObject);
var temp_worksheet:_WorkSheet;
begin
ExcelApplication1.Connect;
ExcelApplication1.Visible[0]:=True;
ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks.Add(EmptyParam,0));
ExcelWorkbook1.Title[0]:='Excel Test';
Temp_Worksheet:=ExcelWorkbook1.WorkSheets.Add(EmptyParam,EmptyParam,1,xlworksheet,0) as _WorkSheet;
ExcelWorkSheet1.ConnectTo(temp_worksheet);
ExcelWorkSheet1.Cells[1,1].value:='TEST';
ExcelWorkSheet1.Cells[1,1].font.size:=5;
end;
编译时提示
ExcelWorkSheet1.Cells[1,1].value:='TEST';
这一行有如下错误信息:
[Error] Unit1.pas(41): Class does not have a default property
我查了excel的帮助,vb里写作Cells(1,1).values
但是用在delphi中还是错。

如果用那种CreateOleObject的方法来操作excel则可以写成Cells[1,1].value:='TEST';
那么使用TExcelWorkSheet应如何写呢?
请各位不吝赐教。50分!



 
你首先要创建OLE对象
ExcelApplication1:=CreateOleObject('Excel.Application');
ExcelWorkbook1:=CreateOleobject('Excel.Sheet');
 
不好意思,第二句写错了!
ExcelWorkSheet1:=CreateOleobject('Excel.Sheet');
 
CreateOleObject('Excel.Application');
ExcelWorkSheet1:=CreateOleobject('Excel.Sheet');
只是创建excel的自动化对象.
与server页的ExcelApplication和ExcelWorkBook应该不是一回事吧?至少delphi5自带的word和powerpoint的Demo中就没有创建这样的对象。

且用delphi创建Excel自动化对象的方法我也通过了。
只是没办法用server页的ExcelApplication,ExcelWorkBook等等控件来操纵。

 

ExcelWorkSheet1.Cells.Item[1, 1] := 'first';
ExcelWorkSheet1.Cells.Item[1, 2] := 'second';
试试看,如果还是不行应该问题在别的地方.
 
同意Bluerain的说法,很对
不过你要是新建了一个sheet,那就要这样了
ExcelApplication1.Sheets.Add(EmptyParam, EmptyParam, EmptyParam, EmptyParam, 0);
ExcelApplication1.Cells.Item[1,1].value:='TEST';
ExcelApplication1.Cells.Item[1,1].font.size:=5;
 
不知道这些语法究竟从哪里可以查到?还是要自己去慢慢试?连Excel的VB帮助也不行。
 
顶部