Название: построение таблицы в excel, по данным, посчитанным в Qt
Отправлено: ArhiZhek от Февраль 25, 2012, 23:16
Подскажите пожалуйста, какими командами можно из lineEdit (их несколько, созданы в ui) перекинуть данные в ячейки Excel?
Название: Re: построение таблицы в excel, по данным, посчитанным в Qt
Отправлено: Rem Norton от Февраль 25, 2012, 23:39
http://developer.qt.nokia.com/forums/viewthread/1871
Название: Re: построение таблицы в excel, по данным, посчитанным в Qt
Отправлено: ArhiZhek от Февраль 26, 2012, 00:19
благодарю, помогло, но вот другая проблема - шрифт(покажу конец прогр, т.к. она большая) QAxObject *range = StatSheet->querySubObject("Range(const QVariant&)", QVariant( QString("A1:C10")));
range = StatSheet->querySubObject( "Cells(const QVariant&,const QVariant&)",QVariant(2),QVariant(3)); range->dynamicCall("SetValue(const QVariant&)", ui->lineEdit_25->text()); range = StatSheet->querySubObject( "Cells(const QVariant&,const QVariant&)",QVariant(3),QVariant(3)); range->dynamicCall("SetValue(const QVariant&)", ui->lineEdit_26->text()); range = StatSheet->querySubObject( "Cells(const QVariant&,const QVariant&)",QVariant(4),QVariant(3)); range->dynamicCall("SetValue(const QVariant&)", ui->lineEdit_27->text());
excel->dynamicCall( "SetVisible(bool)", TRUE ); this->setCursor(Qt::ArrowCursor); delete excel [font="Courier New"]; //никак не пойму как "ему" объяснить, а то ругается...
}
Название: Re: построение таблицы в excel, по данным, посчитанным в Qt
Отправлено: Rem Norton от Февраль 26, 2012, 00:34
А что собственно подразумевалось под этим? Что должно по идее происходить? В смысле: какова задумка автора? delete excel [font="Courier New"];
Название: Re: построение таблицы в excel, по данным, посчитанным в Qt
Отправлено: ArhiZhek от Февраль 26, 2012, 11:05
моя задумка - это отправить посчитанные данные из Qt в excel, код вроде бы верный на отправку, но вот никак не пойму в чем проблема, опять же с этой строчкой на указание шрифта, если без нее, то выдает 15 ошибок, если с ней то от 1 до 5, в зависимости от места ее расположения в коде void Widget::exportToExcel(){
this->setCursor(Qt::WaitCursor); QAxObject *excel = new QAxObject("Excel.Application", this); QAxObject *workbooks = excel->querySubObject("Workbooks"); QAxObject *workbook = workbooks->querySubObject("Open(const QString&)", "tabl.xlsx" ); QAxObject *sheets = workbook->querySubObject("Sheets"); QAxObject *StatSheet = sheets->querySubObject("Item(const QVariant&)", QVariant("1") ); StatSheet->dynamicCall("Select()"); QAxObject *range = StatSheet->querySubObject("Range(const QVariant&)", QVariant( QString("A1:C10")));
range = StatSheet->querySubObject( "Cells(const QVariant&,const QVariant&)",QVariant(2),QVariant(3)); range->dynamicCall("SetValue(const QVariant&)", ui->lineEdit_25->text()); range = StatSheet->querySubObject( "Cells(const QVariant&,const QVariant&)",QVariant(3),QVariant(3)); range->dynamicCall("SetValue(const QVariant&)", ui->lineEdit_26->text()); range = StatSheet->querySubObject( "Cells(const QVariant&,const QVariant&)",QVariant(4),QVariant(3)); range->dynamicCall("SetValue(const QVariant&)", ui->lineEdit_27->text());
excel->dynamicCall( "SetVisible(bool)", TRUE ); this->setCursor(Qt::ArrowCursor); delete excel;
} выдал 15 ошибок причем все однотипные - не определена ссылка на QAxBase excel->dynamicCall( "SetVisible(bool)", TRUE ); this->setCursor(Qt::ArrowCursor); [font="Courier New"]; delete excel[/font];
} а так всего три, никак не пойму что "ему" нужно
Название: Re: построение таблицы в excel, по данным, посчитанным в Qt
Отправлено: ArhiZhek от Февраль 26, 2012, 12:17
убрал полностью все Font и вставил вот такую строчку QAxObject::QAxObject (QString const&, QObject*); void Widget::exportToExcel(){
this->setCursor(Qt::WaitCursor); QAxObject::QAxObject (QString const&, QObject*); // но на этот раз выдает ошибку только на эту строчку типа (ожидание первичного выражения до "(" ";" "," "*") 4 ошибки QAxObject *excel = new QAxObject("Excel.Application", this); QAxObject *workbooks = excel->querySubObject("Workbooks"); QAxObject *workbook = workbooks->querySubObject("Open(const QString&)", "C:\Temp\tipaprogramy\tabl.xls" ); QAxObject *sheets = workbook->querySubObject("Sheets"); QAxObject *StatSheet = sheets->querySubObject("Item(const QVariant&)", QVariant("1") ); StatSheet->dynamicCall("Select()"); QAxObject *range = StatSheet->querySubObject("Range(const QVariant&)", QVariant( QString("A1:C10")));
range = StatSheet->querySubObject( "Cells(const QVariant&,const QVariant&)",QVariant(2),QVariant(3)); range->dynamicCall("SetValue(const QVariant&)", ui->lineEdit_25->text()); range = StatSheet->querySubObject( "Cells(const QVariant&,const QVariant&)",QVariant(3),QVariant(3)); range->dynamicCall("SetValue(const QVariant&)", ui->lineEdit_26->text()); range = StatSheet->querySubObject( "Cells(const QVariant&,const QVariant&)",QVariant(4),QVariant(3)); range->dynamicCall("SetValue(const QVariant&)", ui->lineEdit_27->text());
excel->dynamicCall( "SetVisible(bool)", TRUE ); this->setCursor(Qt::ArrowCursor);
delete excel;
}
Название: Re: построение таблицы в excel, по данным, посчитанным в Qt
Отправлено: mutineer от Февраль 26, 2012, 13:57
C++ (Qt) [font="Courier New"]; delete excel[/font];
в плюсах таких конструкций нет. что ты хотел сказать этими двумя строками?
Название: Re: построение таблицы в excel, по данным, посчитанным в Qt
Отправлено: ArhiZhek от Февраль 26, 2012, 14:00
я предположил что это шрифт, которым будет напечатан в excel, но теперь я вообще не понимаю где у меня ошибка... :-\
Название: Re: построение таблицы в excel, по данным, посчитанным в Qt
Отправлено: mutineer от Февраль 26, 2012, 14:14
я предположил что это шрифт, которым будет напечатан в excel, но теперь я вообще не понимаю где у меня ошибка... :-\
В этом языке такая запись не имеет смысла
|