Chinaunix首页 | 论坛 | 博客
  • 博客访问: 514975
  • 博文数量: 114
  • 博客积分: 5022
  • 博客等级: 大校
  • 技术积分: 1355
  • 用 户 组: 普通用户
  • 注册时间: 2006-08-09 18:01
文章分类

全部博文(114)

文章存档

2012年(1)

2011年(3)

2010年(1)

2009年(16)

2008年(23)

2007年(39)

2006年(31)

我的朋友

分类:

2006-12-25 13:24:21

checkback:http://www.blogcn.com/user30/javababy/blog/26710744.html
在VC中对EXCEL进行操作

1。View->ClassWizard->AddClass(From a type lib)->选择Excel库。库在Office安装目录下面,据说Office 2000是Excel9.OLB,我用的2003就是excel.exe。然后选中要用的_Application,Workbooks,_Workbook,Worksheets,_Worksheet,Range等。cpp和头文件创建出来之后include头文件就可以用了。
2。程序初始化的最初需要调用CoInitialize()来初始化COM库,结束则调用CoUninitialize()。
3。先调用ExcelApp.CreateDispatch("Excel.Application",NULL))来创建Excel服务。
4。常用函数:
wbsMyBooks.AttachDispatch(ExcelApp.GetWorkbooks(),true); 
wbMyBook.AttachDispatch(wbsMyBooks.Add(_variant_t("F:\\yoyo\\code\\testExcel\\yoyo.xls")));
wssMysheets.AttachDispatch(wbMyBook.GetWorksheets(),true); 
wsMysheet.AttachDispatch(wssMysheets.GetItem(_variant_t("Sheet1")),true);
rgMyRge.AttachDispatch(wsMysheet.GetCells(),true); 
rgMyRge.SetItem(_variant_t((long)1),_variant_t((long)1),_variant_t("7"));
_variant_t data =  rgMyRge.GetItem(_variant_t((long)2),_variant_t((long)1));
最后都要调用ReleaseDispatch()来释放对象。
阅读(3408) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~