如何用vba在单元格右键快捷菜单中添加自定义的菜单命令
?
如下圖所示,當鼠標右鍵單擊excel工作表中的單元格時,將會彈出單元格右鍵快捷菜單。
雖然從excel 2007開始 微軟引進了ribbon 功能區來代替excel 常規菜單欄,但是像上圖所示的鼠標右鍵快捷菜單還有很多沒有被替代。
vba 中提供了給菜單增加自定義命令的功能。可以用CommandBar對象獲取指定的菜單命令欄,然后用CommandBar對象的Controls屬性獲取所有的命令按鈕集合,最后用新增集合元素的方法添加新的菜單命令。
比如以下代碼可以在上圖所示的單元格右鍵快捷菜單中添加自定義的菜單命令。當單擊新增的“測試”菜單命令時,將會執行“lyq”子過程。
Visual Basic
?
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | Sub xyf() ????Dim objCB As CommandBar ????'獲取單元格右鍵快捷菜單命令欄 ????Set objCB = Excel.Application.CommandBars("Cell") ????Dim oCBC As CommandBarControl ????With objCB ????????.Reset ????????'往單元格右鍵快捷菜單中新增菜單命令 ????????Set oCBC = .Controls.Add(before:=1) ????????With oCBC ????????????'指定單擊新增的命令時執行的子過程名稱 ????????????.OnAction = "lyq" ????????????.Caption = "測試" ????????End With ????End With End Sub Sub lyq() ????MsgBox 1 End Sub |
如圖所示
?
總結
以上是生活随笔為你收集整理的如何用vba在单元格右键快捷菜单中添加自定义的菜单命令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: OS系统下 使用MAMP站点配置详解
- 下一篇: PyQt(Python+Qt)学习随笔: