Excel 中如何运行 VBA 代码?
编写 VBA 的最终目的是在 Excel 中运行它,得到特定的结果。所以,写完一段 VBA 代码后,下一步骤就是运行它。
需要指出的是,本篇所指的「运行」指的是,在 Excel 界面中运行,而非在 VBA 编辑器中运行。
今天这篇文章就介绍如何在 Excel 里运行 VBA 的多种方法。不同的方法适用的情形不一样,可以根据特定需求,选择其中一种使用。
一般来说,运行 VBA 有以下 3 种方法:
- 从「开发工具」选项卡运行
- 通过给「形状」指定宏的方式运行
- 通过给「按钮」指定宏的方式运行
示例代码
为了演示运行 VBA 的多种方法,现准备了一个包含一个 VBA 宏的工作簿。包含的 VBA 宏是「编写你的第一个 VBA 宏」教程中编写的代码,具体如下:
Sub MyCode()
MsgBox "Hello World"
End Sub
此过程运行后弹出对话框,显示 “Hello World” 信息。
1 从「开发工具」选项卡运行
Excel 开发工具选项卡提供了一个查看工作簿包含的所有宏并且运行的功能。需要运行某一宏时,打开宏列表,选择想要运行的宏,点击「运行」即可。
具体步骤如下:
1)找到「宏」按钮。
2)点击宏按钮,会弹出工作簿包含的所有宏的列表。
3)选择想要的宏,点击右侧「执行」按钮,运行宏。
2 通过给「形状」指定宏的方式运行
Excel 中的形状,可以为其指定宏,当鼠标点击时,宏自动运行。优点是,可以给任何形状指定宏。
具体方法如下:
1)插入一个形状。
2)右键形状,选择「指定宏」。
3)在弹出的宏列表中,选择一个宏,后点击确定完成。
3 通过给「按钮」指定宏的方式运行
除了形状,Excel 提供一个内置的按钮,优点是可以自定义,并且有点击效果。
具体步骤如下:
1)找到开发工具→插入命令。
2)点击插入命令,从列表中选择「表单控件→按钮」。
3)点击按钮,这时出现一个宏列表。其中选择想要指定的宏,点击确定,完成指定宏。
总结
以上几个方法适合在当前工作簿运行自己包含的代码。针对个人宏工作簿和 Excel 插件,还有几个更为快捷的运行 VBA 的方法,这在以后的教程介绍。
初步了解了,继续学习。
请教下,我用「按钮」指定宏的方式运行;怎么锁定「按钮」的大小、以及「按钮」显示的内容;每次右击时就可以编辑「按钮」的大小了,不想开放编辑
需要推出【设计模式】,如图:
请教下,我按照上图所示设定完毕,但是点击对象后宏不会运行,而是进入到宏编辑界面,需要再点击下运行按钮才会运行代码,是怎么回事?
可能处于设计模式了,需要点击【设计模式】取消,再点击
为啥关闭了宏就没了
是不是没有正确设置文件类型?请参考这篇文章:Excel 保存包含 VBA 代码的工作簿
看了一遍,跟着操作,居然会用了,太感谢作者了
超赞,感觉学会了神奇技能
简单易懂,老师太棒了!
感谢分享,小白也能看懂了
活菩萨,感激不尽!
这么好的网站,应该在首页加个打赏二维码。你这无偿给祖国基础知识体系建设做贡献啦!
没这么大能力,过奖了。后续会推出一些付费产品,希望届时支持一下,感激不尽了
请问
在excel中可以插入按钮后直接弹出宏列表,但是在wps中就不能弹出宏列表,麻烦问下wps的按钮怎么关联宏?
插入的是表单按钮吗?如果是的话,插入后,右键按钮,弹出菜单里选择【指定宏】
请问命令按钮和表单按钮一样吗?
不一样的。最直接的不同是ActiveX按钮可以指定任意的过程。
插旗 今日学习结束
Excel显示:无法运行“test.xlsm!笑脸1_Click”宏。可能是因为该宏在此工作簿中不可用,或者所有宏都被禁用。
我使用的是插入笑脸形状定义启动宏按钮那种方式
使用控件的方式是可以的
求大神解决
指定宏里 选择位置 对应的excel表格
你要选择列表里存在可执行的宏,不然直接确认点击控件就会报错
可能是宏安全性没有设置正确,参考这篇文章,https://www.lanrenexcel.com/vba-macro-saftey-setting/