2017-06-20 76 views
-1

我有一個從大型文本文件中提取信息並對提取的信息進行大量數據操作和計算的vba腳本。我有大約1000個文件,每個文件需要一個小時才能完成。VBA:在多臺計算機之間協調批處理作業

我想在儘可能多的計算機上運行腳本(以及其他ec2實例),以減少完成作業所需的時間。但我該如何協調工作?

我試過兩種方法:我設置了一個Dropbox作爲一個網絡驅動器,帶有一個txt文件,當前最後一個作業編號爲thart vba access,啓動下一個作業並更新編號,但顯然有太多的滯後一臺計算機上的文件更新在整個其餘部分都是實用的。第二個是在網上找到一個簡單的「私人」櫃檯服務,爲每次訪問更新,以便訪問該頁面,閱讀該數字,該頁面將更新下一次訪問另一臺計算機的號碼。但我找不到這樣的服務。

有關如何在vba中的不同計算機之間協調這些任務的任何建議?

+0

我所有並欣賞的答案,但這一說,大家都知道VBA類似腳本的限制相比,編程語言,但有時你需要使用你所擁有的和這就是爲什麼我用Excel-VBA標記這一點。因此,我特別喜歡解答如何在不同計算機上實時共享Excel實例之間的小塊信息,而不是那些想從頭開始重寫我的腳本的答案 – user2523167

回答

-3

首先,如果您可以使用適當的編程語言,例如c#,便於並行處理。

如果您必須使用vba,而不是首先優化您的代碼。你能告訴我們代碼嗎?

編輯: 如果你必須比你能做到以下幾點。首先,您需要某種文件服務器來將所有文本文件存儲在一個文件夾中。

然後在宏中,foreach文件夾中的每個.txt文件, 嘗試在獨佔模式下打開第一個,如果文件可以打開,那麼(代碼完成後的「您的代碼」將文件移動到別處)接下來的.txt文件。

相關問題