各位大神:
小弟使用QAxObject生成excel文件后,发现无法正常使用excel的数据分析功能,比如添加个曲线,然后显示“数据太复杂无法显示”等,下面是部分代码:
QAxObject *excel = new QAxObject(this);
excel->setControl("Excel.Application");//连接Excel控件 excel->dynamicCall("SetVisible (bool Visible)","false");//不显示窗体 excel->setProperty("DisplayAlerts", false);//不显示任何警告信息。如果为true那么在关闭是会出现类似“文件已修改,是否保存”的提示 QAxObject *workbooks = excel->querySubObject("WorkBooks");//获取工作簿集合 workbooks->dynamicCall("Add");//新建一个工作簿 QAxObject *workbook = excel->querySubObject("ActiveWorkBook");//获取当前工作簿 QAxObject *worksheets = workbook->querySubObject("Sheets");//获取工作表集合 QAxObject *worksheet = worksheets->querySubObject("Item(int)",1);//获取工作表集合的工作表1,即sheet1 QAxObject *cellX; QAxObject *font; ui->progressBar->setMaximum(model->rowCount()); ui->progressBar->setValue(0); //Begin 写入表头 for(int k=0;k<iCount;k++) { QString Z=excelItems[k]+QString::number(1);//设置要操作的单元格,如A1~Z1 cellX = worksheet->querySubObject("Range(QVariant, QVariant)",Z);//获取单元格 cellX->dynamicCall("SetValue(const QVariant&)",QVariant(items[k]));//设置单元格的值 cellX->setProperty("WrapText", true); //内容过多,自动换行 cellX->setProperty("RowHeight", 30); //设置单元格行高,表头可能会比较长 cellX->setProperty("ColumnWidth", 10); //设置单元格列宽 cellX->setProperty("HorizontalAlignment", -4108); //左对齐(xlLeft):-4131 居中(xlCenter):-4108 右对齐(xlRight):-4152 cellX->setProperty("VerticalAlignment", -4108); //上对齐(xlTop)-4160 居中(xlCenter):-4108 下对齐(xlBottom):-4107 font =cellX->querySubObject("Font"); font->setProperty("Name", QStringLiteral("Arial")); //设置单元格字体 } //End for(int j =0;j<model->rowCount();j++) { for(int i=0;i<iCount;i++) { QString X=excelItems[i]+QString::number(j+2);//设置要操作的单元格,如A2 cellX = worksheet->querySubObject("Range(QVariant, QVariant)",X);//获取单元格 cellX->dynamicCall("SetValue(const QVariant&)",QVariant(model->item(j,i)->data(Qt::DisplayRole)));//设置单元格的值 cellX->setProperty("RowHeight", 15); //设置单元格行高 cellX->setProperty("ColumnWidth", 10); //设置单元格列宽 cellX->setProperty("HorizontalAlignment", -4108); //左对齐(xlLeft):-4131 居中(xlCenter):-4108 右对齐(xlRight):-4152 cellX->setProperty("VerticalAlignment", -4108); //上对齐(xlTop)-4160 居中(xlCenter):-4108 下对齐(xlBottom):-4107 //cellX->setProperty("WrapText", true); //内容过多,自动换行 font =cellX->querySubObject("Font"); font->setProperty("Name", QStringLiteral("Arial")); //设置单元格字体 QApplication::processEvents(); ui->label->setText(QString("正在保存第%1行,共%2行").arg(j+1).arg(model->rowCount())); ui->progressBar->setValue(j+1); } }生成的excel文件无法上传哎,截图见附件
[table=1020,#ffffff,,0][tr][td=1,1,85]Start[/td][td=1,1,85]Station[/td][td=1,1,85]Fuel[/td][td=1,1,85]Units[/td][td=1,1,85]NOx[/td][td=1,1,85]Date[/td][td=1,1,85]Time[/td][td=1,1,85]No of Sample[/td][td=1,1,85]Time of Sample[/td][td=1,1,85]Room Temperature[/td][td=1,1,85]O2[/td][td=1,1,85]CO[/td][/tr][tr][td=1,1,85]-->
[/td][td=1,1,85]21903
[/td][td=1,1,85]coalgas
[/td][td=1,1,85]ppm
[/td][td=1,1,85]0
[/td][td=1,1,85]09.07.2015
[/td][td=1,1,85]11:06:57
[/td][td=1,1,85]1
[/td][td=1,1,85]1
[/td][td=1,1,85]33.80
[/td][td=1,1,85]20.95
[/td][td=1,1,85]0.00
[/td][/tr][tr][td=1,1,85]-->
[/td][td=1,1,85]21903
[/td][td=1,1,85]coalgas
[/td][td=1,1,85]ppm
[/td][td=1,1,85]0
[/td][td=1,1,85]09.07.2015
[/td][td=1,1,85]11:06:59
[/td][td=1,1,85]1
[/td][td=1,1,85]1
[/td][td=1,1,85]33.80
[/td][td=1,1,85]20.95
[/td][td=1,1,85]0.00
[/td][/tr][tr][td=1,1,85]-->
[/td][td=1,1,85]21903
[/td][td=1,1,85]coalgas
[/td][td=1,1,85]ppm
[/td][td=1,1,85]0
[/td][td=1,1,85]09.07.2015
[/td][td=1,1,85]11:07:00
[/td][td=1,1,85]1
[/td][td=1,1,85]1
[/td][td=1,1,85]33.80
[/td][td=1,1,85]20.95
[/td][td=1,1,85]0.00
[/td][/tr][tr][td=1,1,85]-->
[/td][td=1,1,85]21903
[/td][td=1,1,85]coalgas
[/td][td=1,1,85]ppm
[/td][td=1,1,85]0
[/td][td=1,1,85]09.07.2015
[/td][td=1,1,85]11:07:01
[/td][td=1,1,85]1
[/td][td=1,1,85]1
[/td][td=1,1,85]33.80
[/td][td=1,1,85]20.95
[/td][td=1,1,85]0.00
[/td][/tr][tr][td=1,1,85]-->
[/td][td=1,1,85]21903
[/td][td=1,1,85]coalgas
[/td][td=1,1,85]ppm
[/td][td=1,1,85]0
[/td][td=1,1,85]09.07.2015
[/td][td=1,1,85]11:07:02
[/td][td=1,1,85]1
[/td][td=1,1,85]1
[/td][td=1,1,85]33.80
[/td][td=1,1,85]20.95
[/td][td=1,1,85]0.00
[/td][/tr][tr][td=1,1,85]-->
[/td][td=1,1,85]21903
[/td][td=1,1,85]coalgas
[/td][td=1,1,85]ppm
[/td][td=1,1,85]0
[/td][td=1,1,85]09.07.2015
[/td][td=1,1,85]11:07:03
[/td][td=1,1,85]1
[/td][td=1,1,85]1
[/td][td=1,1,85]33.80
[/td][td=1,1,85]20.95
[/td][td=1,1,85]0.00
[/td][/tr][tr][td=1,1,85]-->
[/td][td=1,1,85]21903
[/td][td=1,1,85]coalgas
[/td][td=1,1,85]ppm
[/td][td=1,1,85]0
[/td][td=1,1,85]09.07.2015
[/td][td=1,1,85]11:07:04
[/td][td=1,1,85]1
[/td][td=1,1,85]1
[/td][td=1,1,85]33.80
[/td][td=1,1,85]20.95
[/td][td=1,1,85]0.00
[/td][/tr][tr][td=1,1,85]-->
[/td][td=1,1,85]21903
[/td][td=1,1,85]coalgas
[/td][td=1,1,85]ppm
[/td][td=1,1,85]0
[/td][td=1,1,85]09.07.2015
[/td][td=1,1,85]11:07:05
[/td][td=1,1,85]1
[/td][td=1,1,85]1
[/td][td=1,1,85]33.80
[/td][td=1,1,85]20.95
[/td][td=1,1,85]0.00
[/td][/tr][tr][td=1,1,85]-->
[/td][td=1,1,85]21903
[/td][td=1,1,85]coalgas
[/td][td=1,1,85]ppm
[/td][td=1,1,85]0
[/td][td=1,1,85]09.07.2015
[/td][td=1,1,85]11:07:06
[/td][td=1,1,85]1
[/td][td=1,1,85]1
[/td][td=1,1,85]33.80
[/td][td=1,1,85]20.95
[/td][td=1,1,85]0.00
[/td][/tr][tr][td=1,1,85]-->
[/td][td=1,1,85]21903
[/td][td=1,1,85]coalgas
[/td][td=1,1,85]ppm
[/td][td=1,1,85]0
[/td][td=1,1,85]09.07.2015
[/td][td=1,1,85]11:07:07
[/td][td=1,1,85]1
[/td][td=1,1,85]1
[/td][td=1,1,85]33.80
[/td][td=1,1,85]20.95
[/td][td=1,1,85]0.00
[/td][/tr][tr][td=1,1,85]-->
[/td][td=1,1,85]21903
[/td][td=1,1,85]coalgas
[/td][td=1,1,85]ppm
[/td][td=1,1,85]0
[/td][td=1,1,85]09.07.2015
[/td][td=1,1,85]11:07:08
[/td][td=1,1,85]1
[/td][td=1,1,85]1
[/td][td=1,1,85]33.80
[/td][td=1,1,85]20.95
[/td][td=1,1,85]0.00
[/td][/tr][tr][td=1,1,85]-->
[/td][td=1,1,85]21903
[/td][td=1,1,85]coalgas
[/td][td=1,1,85]ppm
[/td][td=1,1,85]0
[/td][td=1,1,85]09.07.2015
[/td][td=1,1,85]11:07:09
[/td][td=1,1,85]1
[/td][td=1,1,85]1
[/td][td=1,1,85]33.80
[/td][td=1,1,85]20.95
[/td][td=1,1,85]0.00
[/td][/tr][tr][td=1,1,85]-->
[/td][td=1,1,85]21903
[/td][td=1,1,85]coalgas
[/td][td=1,1,85]ppm
[/td][td=1,1,85]0
[/td][td=1,1,85]09.07.2015
[/td][td=1,1,85]11:07:10
[/td][td=1,1,85]1
[/td][td=1,1,85]1
[/td][td=1,1,85]33.80
[/td][td=1,1,85]20.95
[/td][td=1,1,85]0.00
[/td][/tr][tr][td=1,1,85]-->
[/td][td=1,1,85]21903
[/td][td=1,1,85]coalgas
[/td][td=1,1,85]ppm
[/td][td=1,1,85]0
[/td][td=1,1,85]09.07.2015
[/td][td=1,1,85]11:07:11
[/td][td=1,1,85]1
[/td][td=1,1,85]1
[/td][td=1,1,85]33.80
[/td][td=1,1,85]20.95
[/td][td=1,1,85]0.00
[/td][/tr][/table]