Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Передача данных в Excel


ishicucu ©   (2007-02-26 21:00:00) 

Здравствуйте.
Из моей программы нужно построить таблицу в Excel, я использую COM.
Для форматирования ячеек (расчерчивание линий для печати, выравнивание в ячейке) я использую примерно следующий код:

   for i := 1 to 42 do
     for j := 3 to 27 do begin
       sheet.cells[j,i].HorizontalAlignment:=-4108;
       sheet.cells[j,i].VerticalAlignment:=-4108;
       sheet.cells[j,i].Borders.LineStyle:=1;
     end;

Но программа работает слишком медленно:( На простое форматирование тратится несколько секунд. Возможно, существуют какие-то методы чтобы задать форматирование сразу целому диапазону ячеек?


ishicucu   (2007-02-27 13:09:00) [1]

Спасибо, все работает:)


SlymRO   (2007-02-27 08:32:00) [2]

sheet.cells[j,i] - трижды!
надо так
for i := 1 to 42 do
 for j := 3 to 27 do begin
   cell:=sheet.cells[j,i];
   cell.HorizontalAlignment:=-4108;
   cell.VerticalAlignment:=-4108;
   cell.Borders.LineStyle:=1;
 end;

Но быстрее Сергей М. ©   (27.02.07 8:28) [2]всеравно не получится


Сергей М.   (2007-02-27 08:28:00) [3]

Sheet.Range[требуемый диапазон ячеек].HorizontalAlignment:= ...


ishicucu   (2007-02-26 21:06:00) [4]

Да, забыл добавить, в переменной sheet лежит указатель на лист.


Наверх

Титульная страница Поиск, карта сайта Написать письмо