2014-04-14 29 views
0

我正在尋找禁用VBA中的BREAK(或暫停)鍵,但我已經對2牆。VBA打破命令綁定到一個鍵

  1. 如何告訴VBA的功能鍵被按下
  2. 什麼是ON.KEY {NAME}中斷?

我的工作簿,強制用戶通過設定每片xlVeryHidden工作簿時關閉,打開時(以及各種其他位到工作簿中的某些區域周圍日誌中心),將它們設置爲可見的已啓用宏,這意味着必須使用VBA。但是,在「Workbook_open」例程中的某些點上,如果有人中斷了該程序,它將使登錄訪問變得可行,我不希望這樣做。

我希望能夠將中斷命令綁定到任何我想要的組合鍵,所以只有我知道它是什麼,才能禁用中斷鍵。

感謝您的幫助提前

回答

3

您可以通過命令Application.EnableCancelKey = xlDisabled做到這一點。

This link解釋得很好。

1

使用馬努的鏈接,我通過使用此代碼解決了這個問題:在「error_handler_message」程序

On Error GoTo errorhandler 
Application.EnableCancelKey = xlErrorHandler 

'***Code that you don't want interupted goes here*** 

Exit Sub 
errorhandler: 
If Err.Number = 18 Then 
Call error_handler_message 
Resume 
Else 
MsgBox "Something went wrong!" 
Exit Sub 
End If 

是:

Application.EnableCancelKey = xlDisabled 
MsgBox "Breaking Of Code Execution Has Been Disabled", vbOKOnly, "Unable To Stop Process!" 

的原因還有就是xlDisabled是因爲沒有它,用戶可以再次按ctrl + break並中斷該操作,如果您禁用了它們,則它們也不能破壞防間斷代碼。