VBA中Let与Set的区别

 2023-09-05 阅读 406 评论 0

摘要:Let与Set的区别 1、在“类模块”中 Property Let 语句 在Class块中,是给普通变量进行赋值操作的Property,该种Property将不能在其前面使用Set,因而将不能用户对对象变量的赋值。 Property Set 语句 在Class块中,是给对象变量进行设置引用操作的Pr

Let与Set的区别

1、在“类模块”中

Property Let 语句
在Class块中,是给普通变量进行赋值操作的Property,该种Property将不能在其前面使用Set,因而将不能用户对对象变量的赋值。
Property Set 语句
在Class块中,是给对象变量进行设置引用操作的Property。
Property Get 语句
在Class块中,取得(返回)的值的Property,返回值可以是对象变量或普通变量。

2、在“普通模块”中

Let语句是对普通变量赋值,使其指向该对象,将对象引用赋给变量或属性。默认省略。

Set 语句将一个对象赋值给一个变量,使其指向该对象。将对象引用赋给变量或属性 。

 

Sub test()
'Let 与 Set的区别,Let是一般变量赋值,Set是对象变量赋值
Dim a As Integer
Dim rng As Range
Let a = 3
MsgBox a
Set rng = Range("a1")
End Sub

 3、Set的语法

Set objectvar = {[New] objectexpression | Nothing}

Set 语句的语法包含下面部分:
  部分描述:
  objectvar 必需的。变量或属性的名称,遵循标准变量命名约定。
  New 可选的。通常在声明时使用 New,以便可以隐式创建对象。如果 New 与 Set 一起使用,则将创建该类的一个新实例。如果 objectvar 包含了一个对象引用,则在赋新值时释放该引用。不能使用 New 关键字来创建任何内部数据类型的新实例,也不能创建从属对象。
  objectexpression 必需的。由对象名,所声明的相同对象类型的其它变量,或者返回相同对象类型的函数或方法所组成的表达式。
  Nothing 可选的。断绝 objectvar 与任何指定对象的关联。若没有其它变量指向 objectvar 原来所引用的对象,将其赋为 Nothing 会释放该对象所关联的所有系统及内存资源。

转载于:https://www.cnblogs.com/ukeedy/p/7482727.html

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/1/459.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息