怎样使用VBA工作簿转换为加载宏?
1、首先在开发工具中打开VBA编辑器
2、在单元格区域当中输入一些内容作为例子
3、在VBA编辑器中插入模块
4、在模块当中输入如下代码,然后运行
Sub存为加载宏()
ThisWorkbook.IsAddin=True '将工作簿转为加载宏
ThisWorkbook.SaveAs Application.StartupPath & "\一键恢复Excel.xla", 18
'将工作簿存于自启动文件夹
End Sub
Sub auto_open()
Dim Menu As CommandBarControl, SubMenu As CommandBarControl
Set SubMenu=Application.CommandBars(1).Controls.Add(msoControlPopup, 1, , 8, 1)
SubMenu.Caption="一键恢复Excel(&R)" '添加下拉菜单
With SubMenu.Controls.Add(msoControlButton, 1, , , True) '添加菜单按钮
.Caption="一键恢复Excel(&R)" '菜单名称
.OnAction="一键解除限制" '菜单对应的程序名
.FaceId=481 '图标
End With
End Sub
Sub auto_close()
Application.CommandBars(1).Reset '退出时恢复菜单
End Sub
Sub一键解除限制()
Dim i As Byte
On Error Resume Next
Application.ScreenUpdating=False '禁止屏幕刷新,提高速度
For i=1 To 155 'Excel内部菜单为1至150左右,用户添加了菜单和工具条件ID会跟随增加
Application.CommandBars(i).Reset '恢复菜单和工具
Application.CommandBars(i).Enabled=True '让菜单和工具可用
Application.CommandBars(i).Visible=False '让菜单和工具不可见
Next
For i=1 To 4
Application.CommandBars(i).Visible=True
'让ID位于前四位的可见:工作表菜单、图表菜单、常用菜单、格式菜单
Next
With Application '恢复部分快捷键
.OnKey "^c"
.OnKey "^v"
.OnKey "^x"
.OnKey "^s"
.OnKey "^w"
.OnKey "^f"
.OnKey "^x"
.OnKey "^p"
.OnKey "^o"
.OnKey "^a"
.OnKey "^d"
.OnKey "^r"
.OnKey "^g"
.OnKey "+{DEL}"
.OnKey "+{INSERT}"
.CellDragAndDrop=True
.OnDoubleClick=""
End With
Application.ScreenUpdating=True '恢复屏幕更新
MsgBox "大功告成!" & "你的Excel已恢复。" & Chr(10) & "所有自定义菜单、按钮
及功能限制均已解除。", 64, "【友情提示】"
End Sub
5、将光标定位于第一个程序“存为加载宏”处,然后用F5键执行程序,工作簿马上变为了加载宏,而且已存于自启动文件夹中,每次启动Excel时都会打开该宏程序
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:70
阅读量:33
阅读量:25
阅读量:87
阅读量:92