Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 06.05.2009, 00:03
Grafrada Grafrada вне форума
Прохожий
 
Регистрация: 13.03.2009
Сообщения: 18
Репутация: 10
По умолчанию Помогите пожалуйста

У меня простой вопрос, как записать в Excel матрицу, получаемую в прграмме.....Использовал функцию Excel:=CreateOleObject('Excel.Application'); Пишет, что неизвесный идентификатор....
Ответить с цитированием
  #2  
Старый 06.05.2009, 04:47
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,907
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Вот кусок из моего проекта по выводу данных из массива в 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;
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 23:23.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025