功能区按钮调用Excel、PowerPoint、Word中的VBA宏:RunMacro

原文链接: http://www.cnblogs.com/ryueifu-VBA/p/11108695.html

功能区按钮调用Excel、PowerPoint、Word中的VBA宏:RunMacro

众所周知,Excel、PPT、Word文档或加载宏文件中可以写很多过程和函数,调试的过程中当然可以按F8或F5直接在VBA环境中运行。

不过,当你开发完一个工具的时候,一定会想到这些过程的执行方式,普遍的做法是向工作表上放置表单控件,用户在工作表上点击按钮来执行宏。

另外的方式,就是利用CustomUI技术,制作一个扩展名为xlam的加载宏文件,通过Ribbon中的按钮来调用VBA宏。这种方式虽然美观了,但是存在的问题是只要开发一个工具,就得修改或新建一个加载宏文件,冗余操作很多。

 

我最近开发了一个RunMacro的COM加载项,当加载后用户点击功能区中的按钮就可以调用他写的VBA过程

*注意:一般情况下COM加载项里植入的功能区按钮只能调用COM加载项项目中的过程,而不是VBA中的过程。

那下面就直接写使用方法了,看好了。

第一步当然是下载和安装了,下载地址为:RunMacro-Setup.zip,安装后产生如下文件:

功能区按钮调用Excel、PowerPoint、Word中的VBA宏:RunMacro_第1张图片

 

 其中,RunMacro.dll就是COM加载项本身,不用理他,Office三大组件会自动加载这个共用加载项。

另外,会看到还有3个XML文件,例如用记事本打开Excel.xml,显然这是一个定制功能区的XML代码,默认情况下有四个button,注意里面的每个onAction,用它来指代点击按钮调用哪一个VBA过程,红框中的部分,是不是一看就明白?

功能区按钮调用Excel、PowerPoint、Word中的VBA宏:RunMacro_第2张图片

 

 这个文件其他位置的编辑方法没什么两样,唯一注意的是就是onAction要写上VBA中确实存在的过程名称。当然你需要事先准备好的VBA代码了,假设你做了一个“上传工具.xlsm”,里面有个模块Module2,里面包含一个ABC过程。

功能区按钮调用Excel、PowerPoint、Word中的VBA宏:RunMacro_第3张图片

 

 那么它恰好对应于

转载于:https://www.cnblogs.com/ryueifu-VBA/p/11108695.html

你可能感兴趣的:(功能区按钮调用Excel、PowerPoint、Word中的VBA宏:RunMacro)