excel vba中set xxx = yyy和dim xxx as yy,这两个语句有什么区别?

如题所述

两个概念呀,DIM 是VB声明变量的关键字,不管是对象变量 还是普通变量,都是用DIM 显式声明

set是给对象变量赋值的关键字,普通变量赋值其实前面有个省略了的关键字let


比如定义俩个变量,一个range(对象变量) 另一个integer(普通变量)

dim rng as range
dim i as integer
set rng=Sheets(1).Usedrange
i=6

完整的应该是let i=6 但是省略成 i=6

温馨提示:内容为网友见解,仅供参考
第1个回答  2015-04-13
set xxx = yyy
是赋值语句,就是说把YYY变量的值赋给XXX变量
dim xxx as yy
是定义变量语句,即定义XXX为yy类型的变量。
第2个回答  2015-04-13
dim是声明变量类型-----规划xxx的用用途(办公呢还是娱乐变量)
set是将某对象存入一个对象变量中-----xxx到底是办什么公或者进行什么娱乐
第3个回答  2023-07-27
除了 set 和 dim,还有一个let,这里一起说下区别。
name = "小王" 相当于 LET name = "小王" //相当于声明一个变量name并初始化值为"小王"
DIM name as String //声明一个String类型的变量name,开辟了内存空间但并未初始化
set name = "小李" //相当于设置变量name的值为“小李”,如果name之前没有被声明,则此句报错。
相似回答