2011-04-18 103 views
1

有沒有辦法創建一個事件,以便每當用戶右鍵單擊時,我的某個.xlam控件就可以控制?在這種情況下,用戶可能會打開幾個.xlsx(非宏)工作簿,這些工作簿必須保持不含任何宏代碼。如果用戶右鍵單擊其中一個無宏工作表時打開,我希望.xlam獲得控制權並可能執行某些操作。Excel VBA:我可以設置全局右鍵單擊事件嗎?

+0

http://www.cpearson.com/excel/AppEvent.aspx – 2011-04-18 19:45:30

回答

3

在一類這樣使用的事件變量作爲

Private WithEvents mxlApp As Excel.Application 

然後使用事件SheetBeforeRightClick。

Private Sub mxlApp_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean) 

End Sub 

xlsx文件應該安裝.xlam文件才能使其工作。希望這可以幫助。

http://www.cpearson.com/Excel/Events.aspx

http://www.cpearson.com/Excel/AppEvent.aspx

+0

感謝 - 這奏效了。在這種情況下,我只是將「WithEvents」變量放在工作簿(模塊級別變量)中,由工作簿打開方法進行初始化。無需定義額外的課程 - 效果很好 - 再次感謝。 – tpascale 2011-04-18 20:31:48