Код: Выделить всё
uses ..., ComObj, Variants;
...
procedure TForm1.Button1Click(Sender: TObject);
var
XL, XLb, XLs, XLa: Variant;
i: integer;
begin
XL:=CreateOleObject('Excel.Application');
XLb:=XL.Workbooks.Open(widestring(UTF8ToAnsi('D:\test.xlsx')));
XLs:=XLb.Worksheets[1];
XLa:=VarArrayCreate([1,3,1,3],varVariant);
for i:=1 to 3 do begin
XLa[i, 1] := '111';
XLa[i, 2] := '222';
XLa[i, 3] := '333';
end;
XLs.Range['A1:C3'].Value := XLa; // в этом месте ошибка
end;