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

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

Экспорт в Excel 2003 [Delphi, Windows]


Магнум ©   (2005-06-01 14:40:00) 

Код, работавший с Excel XP и ниже (OLE-автоматизация, позднее связывание), перестал работать с Excel 2003.

Пример довольно распространенный:
         Cell1 := WorkBook.WorkSheets[1].Cells[BeginRow, BeginCol];
         Cell2 := WorkBook.WorkSheets[1].Cells[BeginRow + RowCount - 1,
           BeginCol + ColCount - 1];
         Range := WorkBook.WorkSheets[1].Range[Cell1, Cell2];
         Range.Value := ArrayData;

В чем может быть причина проблемы?


Магнум   (2005-06-15 08:48:00) [1]

Не помогает :(


Igor Stepanov   (2005-06-07 12:59:00) [2]

Дело в том, что библиотеки несколько разняться для Excel 2000 и Excel XP. Поэтому некоторые методы требует разных параметров. Следовательно, если программа должна работать с любой версией Excel, то раннее связывание не подходит.
Мне порекомендовали испоьзовать позднее связывание, что я и применяю сейчас. Замедление скорости работы с Excel при теперешних скоростях процессоров практически не заметна.

Попробовали ли Вы Range.Value2 ? Подходит ли этот вариант?

С уважением,
Игорь Степанов


Магнум   (2005-06-06 19:34:00) [3]


> Игорь Степанов   (05.06.05 09:50) [1]
> Я тоже использую позднее связывание, чтобы не зависеть от
> версии Excel


Простите, я эту фразу не понял.


Игорь Степанов   (2005-06-05 09:50:00) [4]

Я тоже использую позднее связывание, чтобы не зависеть от версии Excel. Я применяю Range.Value2 вместо Range.Value. Дошел до этого методом проб и ошибок. Может это для Вас подойдет.

С уважением,
Игорь Степанов


Наверх

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