Вот кусок из моего проекта по выводу данных из массива в Excel
Код:
procedure TSvd001.Button2Click(Sender: TObject);
var
RepData:Variant;
Excel,Sheet:OLEVariant;
begin
RepData:=VarArrayCreate([1,9,1,6],varVariant);
//... Тут много кода заполняющего массив RepData
//Создаем эксель
Excel:=CreateOleObject('Excel.Application');
Excel.WorkBooks.Add;
Sheet:=Excel.WorkBooks[1].ActiveSheet;
Sheet.Range['B5:G12'].Value:=RepData;
//Поясниловка
Sheet.Range['A5'].Value:='Общие';
Sheet.Range['A6'].Value:='Жилфонд';
Sheet.Range['A7'].Value:='Электроэнергия';
Sheet.Range['A8'].Value:='Холодная вода';
Sheet.Range['A9'].Value:='Горячая вода';
Sheet.Range['A10'].Value:='Отопление';
Sheet.Range['A11'].Value:='Газоснабжение';
Sheet.Range['A12'].Value:='Итого';
Sheet.Range['B4'].Value:='Сальдо начальное';
Sheet.Range['C4'].Value:='Начисления';
Sheet.Range['D4'].Value:='Льготы';
Sheet.Range['E4'].Value:='Итого к оплате';
Sheet.Range['F4'].Value:='Оплата';
Sheet.Range['G4'].Value:='Итого';
Sheet.Range['A1'].Value:='Сводный отчет';
Sheet.Range['A2'].Value:=BoxStreet.Text+' '+BoxHN.Text+' '+BoxL.Text;
Sheet.Range['A3'].Value:=PerStr;
Sheet.Range['A1:G1'].Merge;
Sheet.Range['A1:G1'].HorizontalAlignment:=$FFFFEFF4;
Sheet.Range['A1:G1'].VerticalAlignment:=$FFFFEFF4;
Sheet.Range['A1:G1'].Font.Bold:=True;
Sheet.Range['A2:G2'].Merge;
Sheet.Range['A2:G2'].HorizontalAlignment:=$FFFFEFF4;
Sheet.Range['A2:G2'].VerticalAlignment:=$FFFFEFF4;
Sheet.Range['A2:G2'].Font.Bold:=True;
Sheet.Range['A3:G3'].Merge;
Sheet.Range['A3:G3'].HorizontalAlignment:=$FFFFEFF4;
Sheet.Range['A3:G3'].VerticalAlignment:=$FFFFEFF4;
//Настройки красоты
Sheet.Columns['A:A'].ColumnWidth := 20;
Sheet.Columns['B:G'].ColumnWidth := 15;
Sheet.Range['B4:G4'].HorizontalAlignment:=$FFFFEFF4;
Sheet.Range['B4:G4'].VerticalAlignment:=$FFFFEFF4;
Sheet.Range['B4:G4'].WrapText:=True;
Sheet.Range['B4:G4'].Font.Bold:=True;
Sheet.Range['A5:A12'].Font.Bold:=True;
Sheet.Range['A12:G12'].Font.ColorIndex:=3;
Sheet.Range['A12:G12'].Font.Bold:=True;
Excel.Visible:=true;
end;
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.
Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
|