2017-09-14 206 views
-1

是否有可能在VBA中同時執行2個宏。同時執行兩個VBA宏

因此,將有一個宏將訪問數據庫中的輸入並繼續顯示數據,如新聞條。我製作的代碼。

現在還有其他數據和圖表也在同一張紙上。問題是,用戶可以通過按下命令按鈕或選擇單選按鈕來執行其他宏,以便在同一工作表上更改數據/圖表,同時並排顯示電影條,如數據在屏幕上繼續流動。

謝謝。

+2

請在您的問題中具體。是關於Excel VBA還是Access VBA?刪除不相關的標籤。 –

+2

有兩個主機進程同時運行。最好的你可以得到。您不能讓一個主機進程同時運行2+ VBA宏,它全部運行在STA(單線程單元)COM線程中。 –

+0

這是Excel VBA。宏是在Excel VBA中。但是數據庫處於訪問狀態。我已經將excel與access數據庫徹底的ADO聯繫起來了。 –

回答

2

編號VBA是單線程的。因此,一個任務必須先完成才能運行另一個任務。

你可以通過使用Shell來啓動外部程序來愚弄它,但那是另一回事。

+0

感謝您的澄清。那麼有可能第一個宏連續運行。現在當用戶點擊執行任何其他宏時,第一個宏會自動停止並讓第二個宏運行。第二個宏執行結束後,第一個宏自動重新啓動。 –

+0

@ANANDAGRAWAL任何事情都是可能的......你只需要有第一個宏檢查條件。類似於「如果不是另一個宏請求運行然後IWillKeepRunning」。 –

+0

@BrandonBarney請注意,要保持運行宏不鎖定線程,您必須經常(每隔大約兩秒鐘)調用其中的DoEvents,以防止它鎖定Excel應用程序並阻止您實際啓動第二個宏 –