生成调用Excel的头文件
参考如下进行excel头文件的生成:
如何使用vs2022通过excel.exe生成VC、C++能够使用的头文件
添加如下的接口:
#include "CApplication.h"
#include "CWorkbook.h"
#include "CWorkbooks.h"
#include "CWorksheet.h"
#include "CWorksheets.h"
#include "CRange.h"
#include "CFont0.h"
注意:
-
添加接口使用【文件】的形式,必须使用VS2022版本生成对应头文件,VS2019无对应的【可用接口】;
-
添加接口使用【注册表】的形式,现在还存在问题,无法使用,可参看:
- “Microsoft Excel 16.0 Object Library” no have in MFC C++ from TypeLib
- Generating Headers for automating Excel, Outlook and word
编译报错如下图,解决方案就是将相关的方法直接注释掉即可:
CAA工程导入头文件
-
在CAA工程中新建一个Module用于专门处理Excel的Services;
-
将头文件复制粘贴到model的【ProtectedInterfaces】目录中;
-
创建对外开放的Class服务,如:CYYExcelCommonServices类
-
由于CAA的每个model都是自动添加的Windows.h头文件,以及定义了宏【WINDOWS】,这与MFC后台定义是冲突的,此时添加MFC头文件会报如下错误
-
在CYYExcelCommonServices头文件中添加如下宏定义即可,同时添加必要的MFC的头文件
#ifdef _WINDOWS_
#undef _WINDOWS_
#endif
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <afxdisp.h>
//#include <uf_cfi.h>
#include <Windows.h>
#include <ole2.h>
#include <olectl.h>
#