Народ подскажите, цель поменять имя листа в документе, не пойму в чем ошибка. Вот проблема, я экспортирую дату в excel, открываю документ, все нормально работает до определенного момента, код ниже:
QAxObject* excel = new QAxObject( "Excel.Application" );
excel->dynamicCall( "SetVisible(bool)", TRUE );
QAxObject *workbooks = excel->querySubObject( "Workbooks()" );
QAxObject* workbook = workbooks->querySubObject( "Add()" );
QAxObject* Sheets = workbook->querySubObject( "Sheets" );
QAxObject* Sheet;
Sheets->querySubObject("Add");
Sheets->querySubObject("Add");
Sheets->querySubObject("Add");
Sheet =Sheets->querySubObject( "Item(int)" ,1);
Sheet->dynamicCall( "Select()" );
Sheet->setProperty("Name","name1");
ExportToPage1(Sheet,model_1);
После этого названия листа меняется нормально.
Но дальше отказывается менять имя листа.
Sheet =Sheets->querySubObject( "Item(int)" ,2);
Sheet->dynamicCall( "Select()" );
Sheet->dynamicCall("Name","name2");
ExportToPage2(Sheet,model_2);
Sheet =Sheets->querySubObject( "Item(int)" ,3);
Sheet->dynamicCall( "Select()" );
Sheet->setProperty("Name(QString)","name3");
ExportToPage2(Sheet,model_3);
Sheet = Sheets->querySubObject( "Item(int)" ,4);
Sheet->dynamicCall( "Select()" );
Sheet->setProperty("SetName(QString)","name4");
ExportToPage2(Sheet,model_4);
пишет:
QAxBase: Error calling IDispatch member Name: Exception thrown by server
Code : 1004
Source : Microsoft Excel
Description: ??????? ???????????? ??? ??? ????? ??? ?????????. ?????????, ???:
? ????? ?????????? ????? ?? ????????? 31 ?????;
? ??? ?? ???????? ?? ?????? ?? ????????? ??????: : \ / ? * [ ??? ];
? ??? ?? ????????? ??????.
Help : xlmain11.chm
Connect to the exception(int,QString,QString,QString) signal to catch this exception
Кто нибудь знает в чем дело? Спасибо!!!