Bei mir funktioniert diese Lösung mit Excel 2010, Tokyo 10.2 und Windows 10:
Delphi-Quellcode:
xlBottom = -4107;
xlCenter = -4108;
xlDistributed = -4117;
xlJustify = -4130;
xlTop = -4160;
xlLeft = -4131;
xlRight = -4152;
function Texcel.selectrange(xfrom, yfrom, xto, yto : integer) : olevariant;
var
ra : olevariant;
begin
ra := fexcel.range[fexcel.cells[yfrom,xfrom],fexcel.cells[yto,xto]];
result := ra.select;
end;
procedure Texcel.alignrange(xfrom: Integer; yfrom: Integer; xto: Integer; yto: Integer; xalign: Integer; yalign: Integer);
var
ra : olevariant;
begin
ra := selectrange(xfrom,yfrom,xto,yto);
fexcel.selection.HorizontalAlignment := xalign;
fexcel.selection.VerticalAlignment := yalign;
end;
Hierbei ist fexcel folgendermaßen deklariert:
Fexcel := createoleobject('Excel.Application');
xalign und yalign werden durch die obigen Konstanten gesetzt.
Gruß Kompi