gpt4 book ai didi

c++ - 如何从 C++ 加载项获取 excel 版本

转载 作者:太空宇宙 更新时间:2023-11-04 15:28:43 25 4
gpt4 key购买 nike

我有一个 c++ 非托管项目,它的输出是一个 .xll 文件,它是一个在启动时由 excel 加载的加载项,这个加载项可以与两个版本一起工作,excel 2003 和 excel 2007。

现在,我需要做的是获取用户实际用于处理我的加载项的 excel 实例的版本。

有没有人可以建议我如何获得它?

谢谢

最佳答案

Len Holgate 给出了正确答案,找出了正在使用的 Excel 的版本号。下面是一些示例代码:

xloper xlstrVersion, xlintVersion, xlintParam;
// supply a parameter with value 2 to read the Excel version number as a string
xlintParam.xltype = xltypeInt;
xlintParam.val.w = 2;
int xlret = Excel4(xlfGetWorkspace, &xlstrVersion, 1, &xlintParam);
// now use the xlCoerce function to convert the version string to an integer
xlintParam.val.w = xltypeInt;
xlret = Excel4(xlCoerce, &xlintVersion, 2, &xlstrVersion, &xlintParam);
const int ExcelVersion = xlintVersion.val.w;
const bool ExcelVersion12Plus = ExcelVersion >= 12;

如果只需要区分Excel version 12和早期版本,那么使用XLCallVer函数如下:

const bool ExcelVersion12Plus = (0x0c00 == XLCallVer());

关于c++ - 如何从 C++ 加载项获取 excel 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1370375/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com