将一个DLL(和相关的VBA)转换成一个XLL

作为一个暑期项目,我收到了一个大量的C ++文件(50多个函数),并被要求与Excel进行交互。 我从C ++文件创build了一个DLL,并编写了一些VBA过程来创build函数包装器,函数向导,并使用正确的数据填充单元格范围。

因为我必须把它交给其他人,所以我想把它变成一个XLL插件,这样VBA中“声明函数”中DLL的path不会被破坏,而且还有一个更清晰的设置。

我的问题是,在将其转换为XLL加载项的过程中,VBA代码变成了什么? 这些函数是否必须重新写入C ++文件?

克里斯

XLL接口不像VBA那么多地覆盖Excel对象模型,而且对于用户界面任务来说效率较低。 但是与VBA相比,它具有构buildUDF(性能,UDF注册,multithreading等)的许多优点。

所以我的build议是将所有的UDF转换为XLL,但保留VBA XLAM中的function向导和任何其他用户界面的东西。