让我们一起探索一下这些藏在excel自动排序中的“小秘密”。-英雄云拓展知识分享
125
2023-11-07
标签词:Excel VBA,表格,数据,参数,表单
【摘要】 本书摘自《Excel VBA跟卢子一起学早做完,不加班(实战进阶版)》一书中第1章,第7节,陈锡卢、李应钦著。
1.7.2 显示/隐藏自定义名称: Name.Visible 属性
每新建一个自定义名称就在工作簿中生成一个Name对象,该对象拥有1个方法和20个属性。 20个属性中很多属性和Names.Add 创建自定义名称的参数有关,而且是相同的。现取Name. Visible 属性进行讲解,该属性返回或设置一个Boolean值,用于确定对象是否可见、可读写。
无言: Name.Visible属性的作用就通过赋值True或False, 使得指定的名称在名称管理器 中是否可见,从而隐藏/显示指定的名称;同时该属性也可返回指定名称的Boolean值 (根据 Boolean值确定名称是否已隐藏)。
返回或设置指定名称的是否可见或其Boolean 值
表达式 .Visible [=True|Fasle]
隐藏/显示工作簿中所有自定义名称示例如代码1-33所示。
代 码 1 - 3 3 隐藏/显示工作簿中的所有自定义名称
001|Sub Name_Visible)
002| Dim NameCou As Long,Vis_Bol As Boolean,iAs Long
003| NameCou =ActiveWorkbook.Names.Count
004| If NameCou>0 Then
005| Vis_Bol=Application.InputBox ("请选择是要显示还是隐藏工作簿中有所自定义名称"&
006| "输入【0】为隐藏,非0的所有数字均为显示”,”显示/隐藏名称选择",1,Type:=1)
0071 Fori=1 To NameCou
008] ActiveWorkbook.Names(i).Visible =Vis_Bol
009| Nexti
010| End If
011|End Sub
代码1-33示例过程,先通过ActiveWorkbook.Names.Count 语句统计当前工作簿中存在多 少自定义名称,并赋值给 NameCou 变量,并通过If判断NameCou 变量的值是否大于0,若是 则执行让用户显示或是隐藏工作簿中所有自定义名称,并将该选择赋值给 Vis_Bol变量;最后 根据Vis_Bol变量进行指数循环对每一个自定义名称的 Visible 进行设置。
皮蛋:言子,我执行过程后,名称都没有了,会影响我对它的使用吗?
无言:不会,只要知道存在的自定义名称,就如同使用函数时,直接在单元格内输入该名 称即可,但是此时只是无法使用图1-26的粘贴名称功能来输入。
若要创建隐藏的名称,可将Names.Add方法的Visible属性赋值为False,即可达到隐藏效果删除自定义名称对象: Name.Delete
当不需要某一自定义名称时,即可通过 Name.Delete 方法删除,其语法如下。
删除指定工作簿中指定信息的自定义名称
WorkBooks.Names(指定信息).Delect
通过 Name.Delete 方法删除自定义名称示例如代码1-34 所示代码1-34示例过程中,通过3种形式删除指定信息的自定义名称——.Names(4).Delete 为 删除Names 集中的具体序号的对应自定义名称; .Names(" 新建测试02").Delete 则是删除具体 的自定义名称的名字; .Names(RefersTo:="=Sheet1!$G$12")则是使用RefersTo 参数指定需要删 除的具体引用内容,在使用该方法时必需指明参数,否则将出现错误;最后一个与第2个语句 的形式是一样的。
无言:当新建的名称已存在,新建名称的RefersTo参数值将覆盖原RefersTo的值。好了, 关于Names和Name对象的使用方法就介绍到这里了。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~