3

一段时间以来,我一直在使用 Excel 2003 的“Web 服务工具包”来编写通过 VBA 连接到外部 Web 服务的电子表格。

(即您安装了 Web 服务工具包,它在“工具”菜单中添加了一个“Web 服务引用...”项。然后您设置对 Web 服务 URL 的引用,工具包在 VBA 中编写必要的代理类来执行为您连接。Web 服务方法随后出现在 VBA 中。)

Excel 2007 没有这个“Web 服务工具包”——或者至少我找不到类似的东西。我注意到我的 Excel 2003 工作表在 2007 年工作正常,所以必要的钩子就在那里。

这让我想到了我的问题 - 在 Excel 2007 中与外部 Web 服务交谈的认可方式是什么?我在网上找不到有用的东西?

谢谢...

萨尔瓦多

4

1 回答 1

4

你有几个选择:

1) Microsoft Office Soap 类型库 v3.0(如上所述)。很好很简单,在 VBA 中运行良好,完全没用,因为它不支持 WS-Security。如果您在没有 WS-Security 的情况下使用 SOAP,那么您就是在浪费时间。

2) 使用 COM Interop 向 Excel 公开的 C# lib。公开程序集以在 VBA 中使用相对简单 - 允许在 VBA 中使用 WSE 3.0/WCF。程序集必须具有强命名。

3) Visual Studio 模板。这些模板将 C#(或任何其他 CLR 语言)作为程序集集成到电子表格中。最佳集成形式,允许从 Excel(或 Word、PowerPoint 等)完全访问 .NET 框架。模板仅在 Visual Studio Team Suite 中可用。

如果您确实添加了安全性(即使只有 HTTPS),您需要确保您知道自己在使用 MMC 及其证书管理单元。您必须将必要的 CA 添加到您的证书存储中,以确保 .NET 不会开始变得不安。

于 2009-06-22T14:13:20.250 回答