【分享成果,随喜正能量】凡事好坏,多半自作自受,既不是神为我们安排,也不是天意偏私袒护。业力之前,机会均等,毫无特殊例外;好坏与否,端看自己是否能应机把握,随缘得度。。
《VBA信息获取与处理》教程(10178984)是我推出第六套教程,目前已经是第一版修订了。这套教程定位于最高级,是学完初级,中级后的教程。这部教程给大家讲解的内容有:跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互联网数据抓取、VBA延时操作,剪贴板应用、Split函数扩展、工作表信息与其他应用交互,FSO对象的利用、工作表及文件夹信息的获取、图形信息的获取以及定制工作表信息函数等等内容。程序文件通过32位和64位两种OFFICE系统测试。是非常抽象的,更具研究的价值。
教程共两册,二十个专题。今日分享内容是:第三节:在WORD为应用主窗口下关闭EXCEL的操作(2)
第三节 在WORD为应用主窗口下关闭EXCEL的操作
好了,我们继续我们的销售汇报工作,到这里所引用的外部数据我们在报告中已经用完了,那么打开的EXCEL就可以关闭了。如下面的截图:
如何实现关闭呢?这里我们仍将给出两个方案。
2 利用SendKeys语句
该语句允许你将的按键指令发送到活动应用程序窗口,你可以发送一个或组合键,并且得到和直接使用键盘的同样效果。
SendKeys语句如下语法:
SendKeys string [, wait]
参数string是必须的,是要发送到活动应用程序窗口的键或组合键。
例如,使用下列指令来发送字母“f”键:SendKeys "f"
要发送组合键Alt+f,使用:SendKeys "%f" ,百分符号(%)是表示Alt键的字符串。
要发送Shift+Tab的组合键的话,那么就要使用下面的语句:SendKeys "+{TAB}" 。加号(+)表示Shift键。要发送其它键或者其它组合键的话,请参见下表列出的相应字符串。
注意:当使用SendKeys语句发送按键时,一定要牢记区分字符的大小格。因此,要发送组合键Ctrl+d的话,你必须使用^d,而发送Ctrl+Shift+D的话,则必须使用字符串:^+d
下面我们看本讲的代码:
Private Sub CommandButton5_Click()
Set ws = CreateObject("wscript.shell")
ws.AppActivate "001 工作表"
SendKeys "%{F4}"
End Sub
代码的截图:
代码的讲解:通过上面的讲解,我们知道上述代码就是向打开的excel文件发生ALT+F4,也就是关闭这个文件的命令。
本节知识点回向:在本节中我讲了两种方案来关闭已经打开excel的文件,但这个文件并没有处于激活状态,为了关闭这个已经打开的excel文件,我可以利用close方法,或者直接给这个文件发送关闭命令。在利用close方法时要利用GetObject函数返回这个文件,然后关闭。在利用发送关闭指令时利用了SendKeys语句来发送指令。本节中的知识点如下:
① GetObject函数的作用是什么?
② SendKeys语句的作用是什么?
③ GetObject函数和CreateObject 函数的区别是什么?
本节代码参考文件“001 在WORD中激活EXCEL.docm”
我20多年的VBA实践经验,全部浓缩在下面的各个教程中,教程学习顺序: