怎样使用VBA工作簿转换为加载宏?

2025-09-25 19:42:47

1、首先在开发工具中打开VBA编辑器

怎样使用VBA工作簿转换为加载宏?

2、在单元格区域当中输入一些内容作为例子

怎样使用VBA工作簿转换为加载宏?

3、在VBA编辑器中插入模块

怎样使用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

怎样使用VBA工作簿转换为加载宏?

5、将光标定位于第一个程序“存为加载宏”处,然后用F5键执行程序,工作簿马上变为了加载宏,而且已存于自启动文件夹中,每次启动Excel时都会打开该宏程序

怎样使用VBA工作簿转换为加载宏?

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢