任何原因UDF会比宏更快吗?

时间:2016-05-26 21:18:58

标签: xlwings

我有一个使用udfs运行良好的电子表格,但我希望能够将其打包,因此它是独立的。我将其转换为以宏的形式运行,我注意到了一个巨大的减速。 有没有理由说UDF本来应该更快,还是可以修改我的电子表格以匹配性能?

1 个答案:

答案 0 :(得分:2)

RunPython的默认版本启动外部Python解释器,执行代码并再次关闭Python解释器。 UDF使用一直运行的COM服务器,直到您退出Excel。

如果您在VBA设置中设置OPTIMIZED_CONNECTION = True,也可以使用COM服务器#include <iostream> #include <iomanip> // std::setprecision using namespace std; int main() { double x[12] = {135.1,73.1,63.2,59.1,59.1,53.1,36.1,35.1,31.8,24.6,24.1$ double sum = 0; for (int i = 0; i < 12; i++) { if (sum + x[i] <= 594.4) { sum += x[i]; } } cout << fixed << setprecision(10) << sum << endl; return 0; } ,请参阅here