Russian Qt Forum

Qt => ActiveX => Тема начата: kolob от Апрель 14, 2011, 19:17



Название: MS Excel 2010 (Starter) и ActiveQt
Отправлено: kolob от Апрель 14, 2011, 19:17
Добрый день! Возникла такая вот проблема:
Стоит Excel 2010, пытаюсь выполнить простейшие манипуляции (открыть файл xls):
Код:
QAxObject *excel = new QAxObject("Excel.Application", this); 
excel->dynamicCall("SetVisible(bool)", TRUE);
QAxObject *workbooks = excel->querySubObject("Workbooks");
QAxObject *workbook = workbooks->querySubObject("Open(const QString&)", "C:\\file.xls");
delete excel;
Вроде все правильно.
Может есть какие нибудь проблемы с 2010 Excel или именно с версией Starter?
Подскажите может кто сталкивался с такой проблемой.
----------------------
Параллельно установил Excel 2007 и все заработало.


Название: Re: MS Excel 2010 (Starter) и ActiveQt
Отправлено: AntonUfo от Декабрь 01, 2011, 14:59
Добрый день! Возникла такая вот проблема:
Стоит Excel 2010, пытаюсь выполнить простейшие манипуляции (открыть файл xls):
.........
Параллельно установил Excel 2007 и все заработало.

Подниму старую тему, у меня такая же проблема и именно со Starterом !

как с этим бороться ?


Название: Re: MS Excel 2010 (Starter) и ActiveQt
Отправлено: LisandreL от Декабрь 01, 2011, 15:43
Никак. Из Office 2010 Starter вырезан OLE Automation.


Название: Re: MS Excel 2010 (Starter) и ActiveQt
Отправлено: kolob от Декабрь 01, 2011, 15:49
Цитировать
Из Office 2010 Starter вырезан OLE Automation

Спасибо. Буду знать.


Название: Re: MS Excel 2010 (Starter) и ActiveQt
Отправлено: AntonUfo от Декабрь 01, 2011, 16:16
Никак. Из Office 2010 Starter вырезан OLE Automation.

при нажатии на кнопку произвожу экспорт данных из таблицы программы в таблицу excel, если на машине установлен office 2010 Starter, экспорт не производится и программа вылетает, на строке:
Код:
    QAxObject *excel = new QAxObject( "Excel.Application", this); //получаем указатель на эксел
Ошибка такого плана:
QAxBase::setControl: requested control Excel.Application could not be instantiated

как правильно определить что Excel установлен и у него не вырезан OLE Automation ?


Название: Re: MS Excel 2010 (Starter) и ActiveQt
Отправлено: LisandreL от Декабрь 01, 2011, 18:02
По идее excel.isNull() == true будет означать, что эксель не установлен или установлена версия без возможности управления по COM/OLE.
Возможности проверить у меня нет.


Название: Re: MS Excel 2010 (Starter) и ActiveQt
Отправлено: AntonUfo от Декабрь 02, 2011, 10:14
По идее excel.isNull() == true будет означать, что эксель не установлен или установлена версия без возможности управления по COM/OLE.
Возможности проверить у меня нет.

Проверил ! Спасибо. Все работает как нужно.