在word中动态创建菜单并处理菜单点击事件的代码
【打印文章】
Sub Create_Menu()
Const Menu_Name As String = "My New Main_Menu"
Dim Before_number As Integer
Dim X As Integer
On Error Resume Next
CommandBars("Menu Bar").Controls(Menu_Name).Delete '删除最后菜单
Before_number = CommandBars("Menu Bar").Controls.Count + 1
Err.Clear
X = 1 '删除历史自定义菜单
Do Until Err.Number <> 0
CommandBars("Custom Popup " & X).Delete
X = X + 1
Loop
Err.Clear
CommandBars("Menu Bar").Controls.Add Type:=msoControlPopup, Before:=Before_number
CommandBars("Menu Bar").Controls(Before_number).Caption = Menu_Name
For X = 1 To 10 '这里可以加入数据库的访问代码
CommandBars("Custom Popup 1").Controls.Add Type:=msoControlButton, Before:=X
CommandBars("Custom Popup 1").Controls(X).Caption = "吸海垂虹" & X
CommandBars("Custom Popup 1").Controls(X).OnAction = "NewMacros.Proc_Menu"
Next
End Sub
Sub Proc_Menu() '这里可以加入菜单的处理代码
MsgBox CommandBars.ActionControl.Caption
End Sub
Const Menu_Name As String = "My New Main_Menu"
Dim Before_number As Integer
Dim X As Integer
On Error Resume Next
CommandBars("Menu Bar").Controls(Menu_Name).Delete '删除最后菜单
Before_number = CommandBars("Menu Bar").Controls.Count + 1
Err.Clear
X = 1 '删除历史自定义菜单
Do Until Err.Number <> 0
CommandBars("Custom Popup " & X).Delete
X = X + 1
Loop
Err.Clear
CommandBars("Menu Bar").Controls.Add Type:=msoControlPopup, Before:=Before_number
CommandBars("Menu Bar").Controls(Before_number).Caption = Menu_Name
For X = 1 To 10 '这里可以加入数据库的访问代码
CommandBars("Custom Popup 1").Controls.Add Type:=msoControlButton, Before:=X
CommandBars("Custom Popup 1").Controls(X).Caption = "吸海垂虹" & X
CommandBars("Custom Popup 1").Controls(X).OnAction = "NewMacros.Proc_Menu"
Next
End Sub
Sub Proc_Menu() '这里可以加入菜单的处理代码
MsgBox CommandBars.ActionControl.Caption
End Sub
本栏文章均来自于互联网,版权归原作者和各发布网站所有,本站收集这些文章仅供学习参考之用。任何人都不能将这些文章用于商业或者其他目的。( Pfan.cn )
【编程爱好者论坛】