ExcelWorkSheet怎样修改Excel的列宽?(50分)

  • 主题发起人 主题发起人 netCobra
  • 开始时间 开始时间
N

netCobra

Unregistered / Unconfirmed
GUEST, unregistred user!
我这么写的:
ExcelWorkSheet1.Columns[1].ColumnsWidth := 24;
结果编译时提示Class does not have a default property错误,这个错误看不太懂啊。

写ExcelWorkSheet1.Columns.ColumnsWidth := 24可以通过,但是这样就修改了所有列宽了;

搜索以前的帖子,看到有人写用ExcelWorkSheet1.Range[1].ColumnsWidth := 24就可以了,但是我这样写提示Not enough actual parameters;

这个玩意到底应该怎么写?

还有,我家里的机器装的是OfficeXP,公司的机器是Office2000,结果在Excel7里面ExcelApplication的ExcelApplication1.Workbooks.Open()的参数数量就不一致了,这是怎么回事啊?

请大家指点一二,谢谢了!
 
uses .....comobj;


procedure TForm1.Button1Click(Sender: TObject);
var
MsExcel,wBook,wSheet:oleVariant;
begin
MsExcel:= CreateOleObject('Excel.Application');
WBook:=MsExcel.Application;
wbook.workbooks.add;
WBook.Visible:=True;
WSheet:=WBook.ActiveSheet;
wsheet.cells[1,1]:='AAAA';
wsheet.range['A1:C3'].select;
wbook.columns['A'].columnwidth:=30;//修改列宽
wbook.rows['1'].rowheight:=50;

// wsheet.application.selection.mergecells:=true; //合并单元格
wsheet.application.selection.font.size:=20;
wBook.selection.font.name:='黑体';

wBook.selection.HorizontalAlignment := -4108; //水平居中
wBook.selection.VerticalAlignment := -4108; //垂直居中

end;
 
谢谢,这种方法是自己创建Ole控件,但是我用的是Delphi带的Server页里面的控件,这种方法就不适用了,不知道Delphi的控件应该怎么写?
 
类似的!
 
我这样写就是无法通过啊,你可以看看我写的错误现象,谁知道是怎么回事啊!!!
 
接受答案了.
 
后退
顶部