由于学习对Excel的操作是临时学的,有很多东西只是一知半解,但好歹是能运行了,相关内容可以参照前两篇学习笔记。
本文中使用的是OLE方式读写,环境是VS2008和Office2003。现在的编译器有自动完成功能,很容易找到相应的成员函数。查看函数原型有助于理解参数的意义,但仍是有些参数也搞不明白是什么作用,或者如何设置。Excel相关的预定义枚举类型,都是Xl开头,比如XlHAlign,是水平对齐,可以用XlHAlign::找到居中、靠右、靠左等应该设置的值。
步骤如下:
1.新建MFC工程,Project - Add Class - MFC Class From TypeLib,选择File,在Office安装目录下找到EXCEL.EXE,选择相应的接口(参考学习笔记二)。
2.VS2008会在工程中加入相应的头文件。打开头文件,把#import "D:\\Program Files\\Microsoft Office\\Office12\\EXCEL.EXE" no_namespace 一行改成:
#import "C:\\Program Files\\Common Files\\Microsoft Shared\\OFFICE11\\MSO.DLL" \
using namespace Office;
#import "C:\\Program Files\\Common Files\\Microsoft Shared\\VBA\\VBA6\\VBE6EXT.OLB"
using namespace VBIDE;
#import "C:\\Program Files\\Microsoft Office\\Office11\\EXCEL.EXE" \
using namespace Excel;
#undef ExitWindows
#undef DialogBox
#undef RGB
注意“\”字符后面不能放空格
3.由于许多Word的对象与Excel对象的名字是相同的,因此两者同时使用是,必须使用名字空间将其区分。方法简单,比如自定义名字空间是_excel,则把接口头文件中
class C***