我刚刚安装了Delphi XE3。以前的版本是XE。
我的程序生成Excel文件(我正在使用Office 2013)。
我导入了Excel类型库。
当我使用Delphi XE时,此代码有效。
当我使用Delphi XE3时,我收到一条错误消息,如下所示:
“无法设置HorizontalAlignment属性”
XE3发生了什么变化?
这是代码:
VAR Myworkbook, range, excelapp : olevariant;
Begin
ExcelApp:=CreateOleObject('Excel.Application');
ExcelApp.Visible:=true;
MyWorkbook:=ExcelApp.Workbooks.Add;
MyWorkbook.Activate;
MyWorkbook.Activesheet.PageSetup.Orientation := xlPortrait;
MyWorkbook.Activesheet.PageSetup.PaperSize := xlPaperA4;
MyWorkbook.Activesheet.PageSetup.LeftMargin := CMtoPT(1);
MyWorkbook.Activesheet.PageSetup.RightMargin := CMtoPT(1);
MyWorkbook.Activesheet.PageSetup.TopMargin := cmtopt(1.5);
MyWorkbook.Activesheet.PageSetup.BottomMargin := cmtopt(1.5);
Range:=ExcelApp.Range['A1','A1'];
Range.HorizontalAlignment := xlLeft;
Range.VerticalAlignment := xlCenter;
END
最佳答案
我有解决方案:
Range.VerticalAlignment := xlCenter
应该:
Range.VerticalAlignment := integer(xlCenter)
我必须将常量显式转换为整数。我在这里找到它的地方:http://forums.embarcadero.com/thread.jspa?threadID=106493