qt 读excel的一些问题
2013-06-14 09:01
330 查看
网上看到了这些代码
QApplication a(argc,argv);
QAxObject* excel = new QAxObject("Excel.Application");
excel->setProperty("Visible", false);
QAxObject* workbooks = excel->querySubObject("Workbooks");
workbooks->dynamicCall("Open (const QString&)", QString("c:\\a.xls")); //filename
QAxObject* workbook = excel->querySubObject("ActiveWorkBook");
QAxObject* worksheets = workbook->querySubObject("WorkSheets");
QAxObject* worksheet = workbook->querySubObject("Worksheets(int)", 1); //worksheet number
QAxObject* usedrange = worksheet->querySubObject("UsedRange");
QAxObject* rows = usedrange->querySubObject("Rows");
QAxObject* columns = usedrange->querySubObject("Columns");
int intRowStart = usedrange->property("Row").toInt();
int intColStart = usedrange->property("Column").toInt();
int intCols = columns->property("Count").toInt();
int intRows = rows->property("Count").toInt();
QAxObject * cell;
for (int i = intRowStart; i < intRowStart + intRows; i++)
{
for (int j = intColStart; j < intColStart + intCols; j++)
{
cell = excel->querySubObject("Cells(Int, Int)", i, j );
QVariant cellValue = cell->dynamicCall("value"); //这里是关键 要不读不出来
// cell->dynamicCall("SetValue2(const QVariant&)",3);//设置单元格的值 这样可以写进去
}
}
excel->setProperty("DisplayAlerts", 0);
workbook->dynamicCall("Save(void)");
workbook->dynamicCall("Close (Boolean)", false);
excel->setProperty("DisplayAlerts",1);
delete excel;
QApplication a(argc,argv);
QAxObject* excel = new QAxObject("Excel.Application");
excel->setProperty("Visible", false);
QAxObject* workbooks = excel->querySubObject("Workbooks");
workbooks->dynamicCall("Open (const QString&)", QString("c:\\a.xls")); //filename
QAxObject* workbook = excel->querySubObject("ActiveWorkBook");
QAxObject* worksheets = workbook->querySubObject("WorkSheets");
QAxObject* worksheet = workbook->querySubObject("Worksheets(int)", 1); //worksheet number
QAxObject* usedrange = worksheet->querySubObject("UsedRange");
QAxObject* rows = usedrange->querySubObject("Rows");
QAxObject* columns = usedrange->querySubObject("Columns");
int intRowStart = usedrange->property("Row").toInt();
int intColStart = usedrange->property("Column").toInt();
int intCols = columns->property("Count").toInt();
int intRows = rows->property("Count").toInt();
QAxObject * cell;
for (int i = intRowStart; i < intRowStart + intRows; i++)
{
for (int j = intColStart; j < intColStart + intCols; j++)
{
cell = excel->querySubObject("Cells(Int, Int)", i, j );
QVariant cellValue = cell->dynamicCall("value"); //这里是关键 要不读不出来
// cell->dynamicCall("SetValue2(const QVariant&)",3);//设置单元格的值 这样可以写进去
}
}
excel->setProperty("DisplayAlerts", 0);
workbook->dynamicCall("Save(void)");
workbook->dynamicCall("Close (Boolean)", false);
excel->setProperty("DisplayAlerts",1);
delete excel;
相关文章推荐
- VS2010中集成 QT 遇到的一些问题
- Qt5中创建及使用自定义插件遇到的一些问题
- 解决在Sql Server查询分析器中读取Excel表出现的一些问题
- VS2010中集成 QT 遇到的一些问题
- Centos6.5下Qt5.7开发遇到的一些问题
- sqlite基础总结 以及QT连接sqlite的一些问题
- QT中遇到的一些问题
- phpexcelreader中的一些小问题
- VS2010中集成 QT 遇到的一些问题
- Qt5 程序发布windowsXP一些问题
- asp.net 调用 生成word 后excel 权限不足的问题的一些使用经验
- Qt项目中遇到的一些小问题汇总
- dorado导出excel的一些问题
- 关于GridView导出Excel的一些问题(采用Ajax出现的的问题及解决方法)
- 关于Qt开发iPhone/iPad和Android环境下的应用的一些问题
- Qt实现360安全卫士10.0界面(编译时出现的一些问题)
- 关于Java(jxl)操作Excel一些设置的问题。。。。
- Qt 练习遇到的一些问题
- Qt开发环境中使用报表控件FastReport遇到的一些问题(一)
- 有关QT mingGW 5.4.2中的一些问题记录