我刚刚安装了Delphi XE3。以前的版本是XE。
我的程序生成Excel文件(我正在使用Office 2013)。
我导入了Excel类型库。
当我使用Delphi XE时,此代码有效。
当我使用Delphi XE3时,我收到一条错误消息,如下所示:
“无法设置Horizo​​ntalAlignment属性”
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

09-25 19:31