我要投稿 | RSS
您当前的位置:首页 > ExcelVBA

Set对象类型变量的赋值Set [变量名] = [对象类型数据]

作者:      来源:原创
对象是程序的一个元素,不同于基本类型数据,它包括多个属性和多个方法。例如,Excel 中工作簿、工作表、单元格、图表等都是对象。

对象使用 Set 关键词,并且Set关键词不能省略。

如下是对象类型变量基本的赋值方法:


Set [变量名] = [对象类型数据]
 

由于对象可以包含多个属性,因此 VBA 提供一种同时给多个属性赋值的简单方法。具体方法是对象多个属性赋值语句,放置在 With+对象End With关键词中间。

Dim sheet As Worksheet
Set sheet = Worksheets("绩效表")
With sheet
    .Name = "旧绩效"
    .Visible = False
End With
 



如上图红框所示,括号里面的即为表名。在VBA中可如下分别引用这3个表:
 

Sub test()
    Dim sht_slea As Worksheet
    Dim sht_result As Worksheet
    Dim sht_para As Worksheet

    Set sht_slea = Worksheets("SLEA")
    Set sht_result = Worksheets("Check_Result")
    Set sht_para = Worksheets("Parameter")
End Sub

 

如上,用Dim 变量名 As Worksheet的格式来定义一个工作表对象。用Set 变量名 = Worksheets("表名")的格式来把工作表对象赋值给指定的变量。然后就可以用这个变量来引用或操作对应工作表中的对象和数据了。

单个单元格区域的引用


Sub test()
    Dim sht_slea As Worksheet
    Dim rng As Range

    Set sht_slea = Worksheets("SLEA")
    Set rng = sht_slea.Range("D2")

    Debug.Print rng
End Sub

 

仅在Range对象引用的是单个单元格时,才可以用Debug.Print或者MsgBox来输出Range对象中的内容。如果将接下来介绍的引用了多个单元格的Range对象使用Debug.Print或者MsgBox来输出,将会报错。

连续单元格区域的引用


Sub test()
    Dim sht_slea As Worksheet
    Dim rng As Range

    Set sht_slea = Worksheets("SLEA")
    Set rng = sht_slea.Range("D2:D5")

    For Each Item In rng
        Debug.Print Item
    Next Item
End Sub
 

总结:
range为单个的单元格时,可以直接使用debug.print在立即窗口输出,如果是多个值时,是需要使用循环加以显示。
 
来顶一下
返回首页
返回首页
推荐资讯
{SUM函数}:计算单元格区域中所有数值的和
{SUM函数}:计算单元
LEFT函数:从一个文本字符串的第一个字符开始返回指定个数的字符
LEFT函数:从一个文本
MID函数:从文本字符串中指定的起始位置起返回指定长度的字符
MID函数:从文本字符
column函数:返回一引用的列号
column函数:返回一引
扫一扫微信二维码,联系作者:
相关文章
    无相关信息
栏目更新
栏目热门