【分享成果,随喜正能量】夏日里的遗憾,一定都会被秋风温柔化解。吃素不难,难于不肯捨贪口腹之心。若不贪口腹,有何吃素之不便乎。虽吃华素,不吃素日,亦须少吃。以一切物类,皆是贪生怕死,皆知疼痛苦楚。但以口不能言,故为人作食料。倘其能言,其临杀之悲哀怨恨,尚忍闻之乎。思及此,则肉自不便下咽矣。拜经念佛,当以恭敬至诚为本。恭敬大,则功德利益大。恭敬小,则功德利益小。若不恭敬,但做道场,则是自欺。欲欺人尚不能,况欺佛菩萨乎。祈真实恭敬行去,其利益莫大焉。。
《VBA信息获取与处理》教程(10178984)是我推出第六套教程,目前已经是第一版修订了。这套教程定位于最高级,是学完初级,中级后的教程。这部教程给大家讲解的内容有:跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互联网数据抓取、VBA延时操作,剪贴板应用、Split函数扩展、工作表信息与其他应用交互,FSO对象的利用、工作表及文件夹信息的获取、图形信息的获取以及定制工作表信息函数等等内容。程序文件通过32位和64位两种OFFICE系统测试。是非常抽象的,更具研究的价值。
教程共两册,二十个专题。今日分享内容是:第三节:在WORD为应用主窗口下关闭EXCEL的操作(1)
第三节 在WORD为应用主窗口下关闭EXCEL的操作
好了,我们继续我们的销售汇报工作,到这里所引用的外部数据我们在报告中已经用完了,那么打开的EXCEL就可以关闭了。如下面的截图:
如何实现关闭呢?这里我们仍将给出两个方案。
1 CLOSE 方法
这种方法是常用的,先要找到EXCEL文件,然后关闭。我们先看看代码:
Private Sub CommandButton4_Click() '关闭打开的文件
On Error Resume Next
Dim MyXL As Object
Dim axls As Object
Set MyXL = GetObject(, "Excel.Application")
If Err.Number <> 0 Then Exit Sub
For Each axls In MyXL.workbooks
If axls.Name = myfile Then
axls.Close '关闭文档
Exit For
End If
Next
Set axls = Nothing
Set MyXL = Nothing
End Sub
代码截图:
代码讲解:上面的这段程序会首先找到已经打开的EXCEL,从中找到我们需要的那个文件,然后关闭这个程序。下面我们对这个段程序进行详细的讲解。
① GetObject 函数
GetObject 用于返回正在的运行文件对象。语法如下所示:
set xlApp = GetObject(, "Excel.Application")
如果在执行此代码时已经有EXCEL打开,则可以通过xlApp变量访问正在运行的EXCEL。 如果没有运行EXCEL,则会收到可捕获的错误消息。如果有多个Microsoft Excel正在运行,则 GetObject 将返回首先启动的excel。如果关闭第一个实例,则 GetObject将返回已启动的第二个实例,依此类推。
当然我们可以直接调用已经打开的文档也是可以的,如Excel运行的是名为 Book2 的打开工作簿,则以下代码将会返回这个文件,即使这个文件不是启动的最早的文件:
Set xlApp = GetObject("Book2").Application
② CreateObject 函数 用于启动的新的程序。
语法如下:set xlApp = CreateObject("Excel.Application")
这个时候会建立一个新的EXCEL程序的引用,或者我们称之为后期绑定。
③ For Each axls In MyXL.workbooks 遍历每个打开的EXCEL
[待续]
本节代码参考文件“001 在WORD中激活EXCEL.docm”
我20多年的VBA实践经验,全部浓缩在下面的各个教程中,教程学习顺序: