如何使用VBA激活指定应用的程序,几乎没人知道

小编:芯水 更新时间:2022-08-25

No.1

Excel工作当中,也可以选择性地激活应用程序,如何实现呢?下面介绍一个语句来完成。

如何使用VBA激活指定应用的程序,几乎没人知道

AppActive语句

这个语句的功能就是激活应用程序窗口,无论是已经打开或未打开的应用程序。

语法如下图所示:

如何使用VBA激活指定应用的程序,几乎没人知道

No.2

如下图示例:

以打开Word和Excel应用程序为例,单击按钮可实现打开应用程序。

如何使用VBA激活指定应用的程序,几乎没人知道

通常情况下,这个语句是没有意义的,但是在一些高级编程过程当中,可能需要打开相应的应用程序,那么就使用AppActive语句,再方便不过了。

如果你在编程中,用到计算器,给一个按钮进行赋值计算器打开功能,也是很方便的。

No.3

语句使用方法

如何使用VBA激活指定应用的程序,几乎没人知道

AppActivate 语句将焦点更改为命名应用程序或窗口,但不会影响最大化还是最小化它。 焦点在用户执行某个操作更改焦点或关闭窗口时将从已激活的应用程序窗口移动。

使用 Shell 函数可启动应用程序并设置窗口样式。

Shell函数之前的文章有过介绍,可以利用Shell函数启动应用程序,然后再用AppActivate语句激活。

如下代码打开Excel应用程序并激活:

'打开Excel Dim ActExcelAppID ActExcelAppID = Shell("C:\Program Files (x86)\Microsoft Office\Office16\Excel.exe", 1) AppActivate ActExcelAppID

Shell函数应用程序的地址要以自己电脑地址为准,这个地址需要自己设置。

注意:

在确定要激活的应用程序时,title 将与每个正在运行的应用程序的标题字符串进行比较。

如果没有完全匹配的项,则将激活其标题字符串以 title 开头的任何应用程序。 如果有多个按 title 命名的应用程序的实例,则将任意激活一个实例。

解释:

当前打开多个应用程序的时候,title参数将与每个应用程序做字符串比较,如果没有完全匹配就随便打开激活一个应用程序。

如代码:

AppActivate "工资表"

假如当前打开了三个"工资表",标题分别是"1月工资表"、"2月工资表"、"3月工资表",那么就没有完全匹配的应用,在这3个工作表中任意激活一个。

如代码是:

AppActivate "3月工资表"

那么就激活"3月工资表"。

很好理解。

这个功能扩展应用还是很好的,当需要在不同的应用之间进行切换的时候,就可以大显身手了。

欢迎关注、收藏

---END---