2016-11-07 213 views
0

對宏使用個人工作簿時,如何使其在打開任何工作簿時立即運行?我發現這個解決方案並不完美(代碼如下),但它沒有做到我所需要的,因爲它只在第一次打開Excel時才起作用。我希望能夠保持Excel打開,並且打開的任何新工作簿都將觸發宏運行。在打開每個Excel工作簿時自動運行宏

Sub workbook_open() 
MsgBox ("Hello.") 
End Sub 
+0

您可以使用按鈕讓用戶選擇用戶想要打開的工作簿。這將比打開任何工作簿時運行代碼好得多(如果甚至可能的話)。 – NavkarJ

+1

可能的重複 - http://stackoverflow.com/questions/31615594/run-vba-macro-whenever-any-workbook-is-opened – Rdster

回答

0

您想使用Workbook Open event。請在工作簿模塊中:

Private Sub Workbook_Open() 
Msgbox("Hello.") 
' Whatever other code you like here too. 
End Sub 
+0

「私人」部分是否做特別的事情?我已經有了這個。它不會做我想要的。當打開一個新的工作簿(Personal.xlsx除外)時,我想讓宏運行。 – Robby

+0

@Robby你是指當*任何*新工作簿打開時,而不是現有的工作簿?把代碼放入personal.xlsb我相信,它會在任何新的工作簿上打開IIRC – BruceWayne

+0

這隻有在我完全關閉Excel並打開工作簿時纔有效。 – Robby

相關問題