Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Выгрузка в Excel

10K
09 августа 2006 года
Mishelle
25 / / 09.12.2005
Не знаю как открыть шаблон экселевский для его последующего заполнения данными
Пишу:
//сначала открываю Excel
//теперь открываю шаблон
App.OlePropertyGet("WorkBooks").OleProcedure("Open",File);

В переменной File хранится имя шаблона.
7.3K
09 августа 2006 года
H010d Freeze
143 / / 08.08.2006
[QUOTE=Mishelle]Не знаю как открыть шаблон экселевский для его последующего заполнения данными
Пишу:
//сначала открываю Excel
//теперь открываю шаблон
App.OlePropertyGet("WorkBooks").OleProcedure("Open",File);

В переменной File хранится имя шаблона.[/QUOTE]

А если так:
 
Код:
AnsiString File = "....";
  App.OlePropertyGet("Workbooks").OleFunction("Open", File.c_str());


Теперь знаешь.... :). А в чем проблема то?
10K
10 августа 2006 года
Mishelle
25 / / 09.12.2005
Спасибо большое!!!
Написала так и все сразу заработало!
Сама не понимаю, в чем проблема, просто если шаблона нет, то он новый создает нормально без вызова .c_str(), а вот чтобы открыть шаблон, надо так написать...
Прямо мистика какая-то.
Теперь буду знать, а то прямо голову сломала, ничего понять не могла
7.3K
10 августа 2006 года
H010d Freeze
143 / / 08.08.2006
Чудес не бывает.... хотя с BCB и чудеса возможны :).
Скорее всего проблема в том, что COMы ничего не знают об AnsiString и потому не любят....

Есть смысл для строковых параметров использовать либо char* либо wchar_t*, функция StringToOleStr может помочь....

Ну и использовать Variant::OleFunction для функций, а Variant::OleProcedure для процедур, если путать, то тоже могут быть чудеса...

Удачи, коллега! :)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог