前面创建的MyVBA加载宏,设置成了启动就打开的加载宏,只有一个打开宏文件的功能:
在这个自启动的加载宏上,给它在VBA编辑器里,添加一个菜单栏:
主要功能就是收集一些常用的代码,方便快速的插入到VBA编辑器中。
这些常用的代码主要是一些一般不构成单独功能的代码,如果是构成单独功能的代码,个人习惯存储在文件中,就像前面提到过的vbapFunc.xlam中ScanDir之类的,是通过工具-引用,添加引用去使用。
这里添加的代码就是一些小的片段的代码,比如声明一个外部对象字典:
Dim dic As Object
Set dic = VBA.CreateObject("Scripting.Dictionary")
因为拼写单词有时候可能会写错,通过这种方式就可以避免这个问题。
当然这个也可以根据自己的习惯去添加,目的只是为了方便快速的插入一些经常用到的代码。
我们在VBE菜单——CommandBars对象里,对VBE里的菜单对象已经有了了解,要添加新的菜单,只要去操作CommandBars集合中的第一个对象即可:
Sub TestAdd()
Dim cmd As CommandBarControl
Set cmd = Application.VBE.CommandBars(1).Controls.Add(msoControlPopup)
cmd.Caption = "测试"
End Sub
这个时候,在菜单栏上就多了一个“测试”的菜单,msoControlPopup表示添加的是一个弹出式的Control,这种弹出式的可以继续在其上面添加CommandBarControl:
Sub TestAdd()
Dim cmd As CommandBarControl
Set cmd = Application.VBE.CommandBars(1).Controls.Add(msoControlPopup)
cmd.Caption = "测试"
Dim btn As CommandBarButton
Set btn = cmd.Controls.Add
btn.Caption = "测试按钮"
End Sub
这样“测试”菜单上就出来了一个按钮了。
删除这个菜单:
Sub TestDelete()
On Error Resume Next
Application.VBE.CommandBars(1).Controls("测试").Delete
End Sub
如果不存在"测试"这个菜单的时候,会报错,所以添加了一条忽略错误的语句。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有