Excel C# 互操作与 Excel VBA

发布于 2024-12-08 08:20:10 字数 281 浏览 0 评论 0原文

我负责查找 Excel 插件中的瓶颈。有些工作簿的计算速度非常慢。我有使用 VBA 代码的经验,我们产品的旧版本使用所有 VBA 代码来执行计算。然而,在该产品的较新版本中,许多计算是通过加载项完成的,该加载项是使用 Excel.Interop 库构建在 ASP.NET C# 之上的。我的问题是:互操作库的运行速度是否比直接驻留在 VBA 工作簿中的代码慢?根据我的经验,所有使用 Excel.Interop 的项目在密集计算时运行速度都非常慢。如果是这样,有人对加快 Excel.Interop 流程和功能有任何建议吗?

谢谢。

I am in charge of finding bottlenecks in a Excel Add-in. Some of the workbooks calculate extremely slowly. I have the experience of working with VBA code, and the older versions of our product used all VBA code to execute calculations. However, in the newer versions of the product, a lot of the calculations are being done through the add-in, which is build on top of ASP.NET C# using Excel.Interop libraries. My question is this: Do interop libraries just run slower then code that resides directly in a workbook in the VBA? From my experience, all projects using Excel.Interop run extremely slow on intense calculations. If so, does anyone have any advice on speeding up Excel.Interop processes and functions?

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

骄兵必败 2024-12-15 08:20:10

对于对象模型调用和数据传输调用,Interop 的开销明显高于 VBA。努力减少通话次数是值得的。
您可能想查看我的博客文章,比较 Excel UDF 技术:
UDF 技术选择

如果您能够使用 Addin-Express 或 Excel DNA,我会推荐这两种产品。

对于优化计算速度的一般建议,我推荐我的网站
或我的MSDN 白皮书

Interop has a significantly higher overhead than VBA for object model calls and data transfer calls. Its worth working hard to minimise the number of calls.
You may want to look at my blog post comparing Excel UDF technologies:
UDF Technology Choices

If you are able to use Addin-Express or Excel DNA I would recommend both products.

For general advice on optimising calculation speed I recommend my website
or my MSDN white papers .

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文