社区
工具平台和程序库
帖子详情
有没封装了操纵Excel的C++库?
天下无雪的马甲
2006-08-12 05:17:08
不想用ODBC,也不想用OLE操纵Excel,不知有没直接操纵Excel的库?
最好是跨平台的。
...全文
462
7
打赏
收藏
有没封装了操纵Excel的C++库?
不想用ODBC,也不想用OLE操纵Excel,不知有没直接操纵Excel的库? 最好是跨平台的。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
天下无雪的马甲
2006-08-18
打赏
举报
回复
经过几天的摸索,终于找到了wxWidgets读取Excel数据的方法。
就是一直用wxAutomationObject对象的GetObject方法定位到单元格,然后用GetProperty方法取得"Value"。
代码如下:
if(OpenDlg1->ShowModal()!=wxID_OK)
return;
wxAutomationObject excelObj,workbook,sheet,cell;
if(!excelObj.CreateInstance("Excel.Application"))
wxMessageBox("错误","创建Excel对象失败!",wxOK);
excelObj.CallMethod("workbooks.open",OpenDlg1->GetPath());
if(!excelObj.GetObject(workbook,"ActiveWorkBook"))
wxMessageBox("错误","创建workbook对象失败!",wxOK);
wxVariant param1[1];
param1[0]=1L;
if(!workbook.GetObject(sheet,"Sheets",1,param1)) //打开第一个工作表
wxMessageBox("错误","创建sheet对象失败",wxOK);
wxVariant params[2];
params[0]=1L;
params[1]=3L;
if(!sheet.GetObject(cell,"cells",2,params)) //选择第一行第三列
wxMessageBox("创建Cell对象失败!","错误",wxOK);
wxVariant x1=cell.GetProperty("Value");
text1->SetLabel("第一行第3列的值为:"+x1.GetString());
excelObj.CallMethod("close");
结贴!
天下无雪的马甲
2006-08-14
打赏
举报
回复
我现在是用wxDev-C++,有没办法用wxWidgets的OLE接口读取Excel数据库的?
我仿C++Builder做的不行啊。
代码如下:
if(OpenDlg1->ShowModal()!=wxID_OK)
return;
wxAutomationObject excelObj,workbook,sheet;
if(!excelObj.CreateInstance("Excel.Application"))
wxMessageBox("错误","创建Excel对象失败!",wxOK);
if(!excelObj.GetObject(workbook,"WorkBooks"))
wxMessageBox("创建workbook对象失败","错误",wxOK);
workbook.CallMethod("Open",OpenDlg1->GetPath());
if(!workbook.GetObject(sheet,"Sheets[1]"))
wxMessageBox("创建sheet对象失败","错误",wxOK);;
wxVariant x1=sheet.GetProperty("Value","A1");
wxMessageBox("A1内容",x1.GetString(),wxOK);
excelObj.CallMethod("Close");
到创建Sheet对象这一步就失败了。
qtext
2006-08-14
打赏
举报
回复
wxDev-c++没用过,
if(!workbook.GetObject(sheet,"Sheets[1]"))
这一句应该有问题,应先获取sheets集合,再用Item获取sheet
vc类似的语句为:
Worksheets wss = wb.GetWorksheets();
_Worksheet ws = wss.GetItem (COleVariant((short)1));
qtext
2006-08-12
打赏
举报
回复
ole实际上已是最好的方式,即使有这样的库,也绝对不会比Ole方式强大,大多数类似这样的库都只有读取或写入数据的功能,不会有ole这样对Excel进行任意控制的强大功能。
kimryo
2006-08-12
打赏
举报
回复
哪有什么找头?Excel内部格式是没有公开的~
天下无雪的马甲
2006-08-12
打赏
举报
回复
所以才找有没封装好的类啊。
kimryo
2006-08-12
打赏
举报
回复
写Excel可以读的很简单~但是要解析Excel自己的基本上不可能~
C++
怎么操作
EXCEL
一、新建
EXCEL
表 COleVariant covOptional((long)DISP_E_PARAMNOTFOUND,VT_ERROR); app.CreateDispatch("
EXCEL
.Application"); app.SetVisible(false); //设置表可见性
C++
操作
Excel
学习笔记
C++
操作
Excel
学习笔记 ...
C++
读取
Excel
的XLS文件的方法有很多,但是也许就是因为方法太多,大家在选择的时候会很疑惑。 由于前两天要做导表工具,比较了常用的方法,总结一下写个短文, 1.OLE的方式 这个...
C++
操作
Excel
学习笔记(二)
操纵
Excel
表格的编程实现 经由过程VC实现对
Excel
表格的
操纵
的办法有多种,如:经由过程ODBC数据
库
实现,经由过程解析
Excel
表格文件,经由过程OLE/COM的实现。本文首要研究经由过程OLE/COM实现对
Excel
表格的
操纵
。 ...
c++
操作Word
c++
操作Word 2013-01-16 15:35 6602人阅读 评论(0) 收藏 举报 摘要: 使用VC编程来
操纵
Office。你可以实现诸如:Word文件打印、传送数据到Word文档、发送E-MAIL、自动产生表格、
Excel
数据统计、圆饼图...
在VC中使用Automation
操纵
Word和
Excel
在VC中使用Automation
操纵
Word和
Excel
最近要在程序中添加一个将程序中的图片和数据输出到Word的功能并且需要将数据导出到
Excel
,以前从来
没
弄过,遂首先祭起在CSDN的VC/MFC论坛搜索的法宝。输入关键字Word得到n篇...
工具平台和程序库
24,854
社区成员
27,343
社区内容
发帖
与我相关
我的任务
工具平台和程序库
C/C++ 工具平台和程序库
复制链接
扫一扫
分享
社区描述
C/C++ 工具平台和程序库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章