2011-01-26 20 views
2

我有一個包含大量不同數據的excel工作簿。另一方面,我有一臺使用Java的服務器,可以執行大量的計算工作。我需要連接我的XL Workbook這臺服務器使用TCP協議並將數據從Excel發送到Java使用Windows套接字和Excel VBA的Light Client

要做到這一點,最簡單的方法是什麼?我聽說winsocks控件可以用於VBA。我可以在哪裏下載庫來做到這一點(是否有官方的MS庫?=>很多人都在談論MSWINSCK.OCX,但我無法在微軟網站上的任何地方找到它)。

對於能夠發送數據和從服務器接收數據的小型項目,您是否有VBA中的示例或鏈接?

由於 RGDS

+0

HTTP作爲傳輸層完全不可能出現問題嗎? – Tomalak 2011-01-26 10:22:57

回答

3

MSWINSCK.OCX是VB運行時(例如http://support.microsoft.com/kb/932349)的一部分。同一鏈接通知可能與mswinsck.ocx相關的安全問題。如果您已經下載了ocx的最新且有希望最安全的版本(或者因爲您已安裝vb的運行時而在硬盤上找到它),則可能需要在Windows控制檯上通過regsvr32手動註冊它。在Windows 7上,你甚至可能要激活另外,例如用此工具:。http://www.nirsoft.net/utils/acm.html

如果這一切完成後,添加一個引用您的VBA項目微軟的Winsock控制方式v ....(SP ...)如果您希望對此進行後期綁定,則可以稍後再刪除該ref,但是現在需要在VBA項目的對象目錄(<F2>)中提供MSWinsocketLib以及在編碼時用於智能感知

我通過搜索mswinsck.ocx站點microsoft.com找到了我所告訴你的內容,並在查看對象目錄後,搜索最具體的表達式,發現:http://www.15seconds.com/issue/010820.htm其中是基本信息並鏈接到其他文章。

但是:在我看來,Winsocket是一個相當古老的技術。我估計15秒的文章是從2001年開始的。我不會進一步挖掘,因爲我們早期參考winsck.ocx,並因此強制管理員將我們的軟件安裝到regsvr32 mswinsck.ocx,原因是我不想知道。也許只是爲了讓管理員知道我們的軟件是多麼成熟......在搜索引擎找到替代品如csocket(API)的頁面被提及,所以請進一步挖掘。

既然這不是解決方案,但只是提示和討論我寧願只是評論你的問題,但沒有鏈接給我添加評論,我可能缺乏一個有趣的計算器正確。