Qt QAxObject--未以正确格式创建excel
我使用的是Qt QAxObject--未以正确格式创建excel,qt,qaxobject,Qt,Qaxobject,我使用的是QAxObject,能够打开现有文件并读取不同的表格和单元格 但是当我使用QAxObject创建新的excel文件时。它正在创建test_1.xls文件。 但是当我打开这个文件时,它给了我一个错误。我正在使用ms-excel-2007 代码:--- 尝试打开此文件时出现错误消息:----- 请建议我缺少什么,以便以正确的格式创建.xls文件?好的,我解决了这个问题。因为我安装了Office2007, “保存”功能将以2007格式保存文件,但我将其保存到“*.xls”,某些格式无法正确识
QAxObject
,能够打开现有文件并读取不同的表格和单元格
但是当我使用QAxObject
创建新的excel文件时。它正在创建test_1.xls
文件。
但是当我打开这个文件时,它给了我一个错误。我正在使用ms-excel-2007
代码:---
尝试打开此文件时出现错误消息
:-----
请建议我缺少什么,以便以正确的格式创建
.xls
文件?好的,我解决了这个问题。因为我安装了Office2007,
“保存”功能将以2007格式保存文件,但我将其保存到“*.xls”,某些格式无法正确识别
因此,解决方案是,使用“SaveAs”将excel保存为2003格式
QList-lstParam;
lstParam.append(“D:\\Temp\\test_1.xls”);
lstParam.append(-4143);
lstParam.追加(“”);
lstParam.追加(“”);
lstParam.append(false);
lstParam.append(false);
lstParam.append(1);
lstParam.append(2);
lstParam.append(false);
lstParam.append(false);
lstParam.append(false);
lstParam.append(false);
工作簿_1->dynamicCall(“保存为(QVariant,QVariant,QVariant,QVariant,QVariant,QVariant,QVariant,QVariant,QVariant)”,lstParam);
QAxWidget excel_1("Excel.Application");
excel_1.setProperty("Visible", false);
QAxObject * workbooks_1 = excel_1.querySubObject("WorkBooks");
workbooks_1->dynamicCall("Add");
QAxObject * workbook_1 = excel_1.querySubObject("ActiveWorkBook");
QAxObject * worksheets = workbook_1->querySubObject("WorkSheets");
excel_1.setProperty("DisplayAlerts", 0);
workbook_1->dynamicCall("SaveAs (const QString&)", QString("D:\\Temp\\test_1.xls"));
workbook_1->dynamicCall("Close (Boolean)", false);
excel_1.setProperty("DisplayAlerts", 1);
excel_1.dynamicCall("Quit (void)");
The file you are trying to open is diffrent format than xls.
Verify that file is corrupted or not do you want to open this file or not
QList<QVariant> lstParam;
lstParam.append("D:\\Temp\\test_1.xls");
lstParam.append(-4143);
lstParam.append("");
lstParam.append("");
lstParam.append(false);
lstParam.append(false);
lstParam.append(1);
lstParam.append(2);
lstParam.append(false);
lstParam.append(false);
lstParam.append(false);
lstParam.append(false);
workbook_1->dynamicCall("SaveAs(QVariant, QVariant, QVariant, QVariant, QVariant, QVariant, QVariant, QVariant, QVariant, QVariant, QVariant, QVariant)", lstParam);