ad

《Excel VBA跟卢子一起学早做完,不加班(实战进阶版)》_4.1 父对象:Parent属性的用法

网友投稿 228 2023-11-07

【摘要】 本书摘自《Excel VBA跟卢子一起学早做完,不加班(实战进阶版)》一书中第4章,第1节,陈锡卢、李应钦著。

4.1 父对象:Parent属性的用法

无言:趁热打铁才是硬道理,否则晾凉了又该开始重新起火烧铁了。

从前面的学习中得知 Application对象作为所有 Excel内置VBA 对象的顶端对象——Excel (程序软件)本身,接下来学习有关顶端对象的常用方法和属性以及简单的类模块运用。

在VBE 中的关键字不再是, 而是, 因 为 Application 对象是 Excel 中最高级的对象,也等于 Excel本身,所以在帮助搜索栏内只要输入Application 就会出现与其 有关联的方法/属性链接,下面来认识下Application的常用方法。

Application的方法针对整个 Excel编程都有效,所以其使用范围也最为广泛,在认知这些 方法后,将在以后的编程中适时使用它们。

无言:接下来,咱挑经常用到的方法/属性进行讲解,其他的还是要靠蛋蛋自己的努力 了,哈哈哈。

《Excel VBA跟卢子一起学早做完,不加班(实战进阶版)》_4.1 父对象:Parent属性的用法

皮蛋:你想想就好吧,那现在介绍哪些呢?

在前面的章节中多次提及了父对象——返回当前对象的上一层对象。如图2-1所示的当前 层上一层的对象在VBA 中最顶层的对象就是 Application,Excel是所有下层对象的父级对象。

如果要返回指定对象的父级对象可以通过Parent属性,它的作用就是获取指定对象的父级 对象。

皮蛋:老规矩——举例。

无言:先看下Parent属性的语法吧。

返回指定对象的父对象。只读

当前对象.Parent

Parent的对象是当前使用的对象,例如当前的对象是 Range 对象,要获取Range 对象的父 对象的语句如下。

Range("Al"),Parent 默认情况下,单元格对象前为注明具体的工作表名称时,将默认为当前激活工作表

无言:此时Range("A1").Parent属性获取的是对象类型,而非文本类型。

现在有个工作簿,其中 Sheet1 工作表上放置了2个图形和一个数据区域。要获取不同当 前对象的位置或名称,并使用Parent属性获取它们的父级对象,如代码4-1所示。

代 码 4 - 1 获取工作表上的不同父级对象及其数据类型

001|Sub ObjectsParent()

002| Dim Rng As Range,Sht As Worksheet,Wb As Workbook,Shp As Shape,Flei As String

003| Set Rng=Selection:Set Sht=ActiveSheet:Set Wb=ActiveWorkbook:Flei=TypeName(Rng.Parent)

004| MsgBox" 单元格对象的位置是: 【" & Rng.Address(0,0)& "】"&vbCr&" 其父对象是:"_

005|

&Rng.Parent.Name&vbCr&" 对象类型是:"& Flei

006|

Flei=TypeName(Sht.Parent)

007|

MsgBox” 激活工作表对象的名称是:【"&ShtName&" 】"&vbCr&"

其父对象是:"_

008|

&Sht.Parent.Name &vbCr&"对象类型是:"& Flei

009|

Flei=TypeName(Wb.Parent)

010|

MsgBox” 激活工作簿对象的名称是: 【【" & Wb.Name&"】"&vbCr&"

其父对象是:”

011| &Wb.Parent.Name &vbCr&" 对象类型是:"& Flei

012| Flei =TypeName(Shpl.Parent)

013 Set Shp=Sheetl.Shapes(1)

014| Flei=TypeName(Shp.Parent)

018 Flei =TypeName(Shp.Parent)

019| MsgBox” 激活工作簿对象的名称是: 【" & Shp.Name&”】"&vbCr&" 其父对象是:"

020| &Shp.Parent.Name &vbCr&"对象类型是:"&Flei

021|End Sub

代码4-1前面定义了几个对象变量,都是经常使用对象:单元格、工作表、工作簿、图形 对象,最后定义了 Flei 的文本变量,其用于读取当前对象的父级对象的分类。

接着将对象变量具体赋值——其中单元格 Rng 对象被赋值为 Selection, 返回当前选中单 元格对象,该对象不局限于 Range 对象类型, 可以是多种对象类型; Sht和 Wb 对象变量则都 分别赋值为被激活的当前对象工作表(簿); Shp 则是表上的图形等图形对象,并在执行过 程分别对 Shp 赋值为工作表上图形1和图形2; 对象如图4-1 所示。

皮蛋:前面的变量声明和赋值部分我懂,后面这个Parent属性的也能理解,但是TypeName 不大认识。

无言:这个等下详细说(其实前面有讲过的),先把思路讲明白。

皮蛋:好!

赋值之后, Flei变量通过TypeName(*.Parent)获取指定对象的父级对象,并通过Msgbox 提示父级对象的类型,提示内容如图4-2所示。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:达人之路·《高效办公应用宝典公式·函数与VBA》_1.0 公式和函数的基础知识
下一篇:达人之路·《高效办公应用宝典公式·函数与VBA》_4.3 数组之间的运算规则
相关文章

 发表评论

暂时没有评论,来抢沙发吧~