在VBA中调用多个DLL

我已经创build了一个具有许多函数的C ++ DLL,我通过VBA从Excel表格中调用它们。 我面临的问题如下:

我有许多电子表格单元每N秒同时调用相同的函数,所以需要一段时间来更新Excel书。 如果单独调用每个运行是非常有效的,但是当多个单元调用该函数时,它将运行序列化并花费太长时间。

我的问题是,我怎样才能得到更好的解决scheme? 我想如果可能同时调用同一个函数,并行运行或类似的东西,所以我可以更快的例程。

谢谢

您需要在XLL中直接使用C ++函数调用multithreadingUDF:然后Excel的计算引擎将使用多核multithreading。

要做到这一点,您将需要使用Excel'C'Api SDK

https://msdn.microsoft.com/en-us/library/office/bb687829.aspx

https://msdn.microsoft.com/en-us/library/office/bb687883.aspx