2009-06-22 40 views
3

我一直在使用Excel 2003的'Web Services Toolkit'來編寫通過VBA連接到外部Web服務的電子表格。Excel 2007 - 與Web服務交流

(即,您安裝了Web服務工具包,它將「Web服務引用...」項添加到「工具」菜單中。然後設置對Web服務URL的引用,並且工具包編寫必要的代理類在VBA中爲你做連接,Web服務方法出現在VBA中)

Excel 2007沒有這個'Web Services Toolkit' - 或者至少我找不到類似的東西。我注意到我的Excel 2003工作表在2007年工作正常,所以必要的鉤子在那裏。

這引出我的問題 - 什麼是在Excel 2007中與外部Web服務交談的批准方式?我在網上找不到任何有用的東西?

謝謝...

SAL

回答

4

您有幾種選擇:

1)的Microsoft Office SOAP類型庫3.0(如上所述)。不錯,簡單,在VBA中運行良好,完全無用,因爲它不支持WS-Security。如果您在沒有WS-Security的情況下使用SOAP,那麼您就浪費了時間。

2)使用COM Interop將C#lib暴露給Excel。公開用於VBA的程序集相對簡單 - 允許在VBA中使用WSE 3.0/WCF。大會必須有強大的命名。

3)Visual Studio模板。這些模板將C#(或任何其他CLR語言)作爲程序集集成到電子表格中。最佳的集成形式,允許從Excel(或Word,PowerPoint等)完全訪問.NET框架。儘管模板只在Visual Studio Team Suite中可用。

如果你確實增加了安全性(即使只有HTTPS),你需要確保你知道你是在MMC和它的Certificate snapin中。您必須將必要的CA添加到您的證書存儲區,以確保.NET不會感到不適。