这段代码中的两个点是什么意思?

时间:2019-07-17 11:51:30

标签: excel vba

我想学习excel vba中两个点的用法。

Sub loadparts(a)    
    Sheets("Sheet1").Select

    Dim lists()    
    b = 2    
    'what is the meaning of two dots.

x:
    If Cells(b, a) <> "" Then   
        ReDim Preserve lists(1 To b - 1)   
        lists(b - 1) = Sheets(b, a)

        b = b - 1: GoTo x
    End If

    UserForm1.ListBox1.List = lists()  
End Sub

2 个答案:

答案 0 :(得分:3)

两个点称为冒号。冒号在Visual Basic for Applications中具有两个功能

定义标签:在您的示例中,x是标签。您可以使用goto语句,使用标签跳转到代码的特定部分。在您的示例中,这发生在以下行:

b = b - 1: GoTo x

您可以使用它来分隔说明(偶然发生在同一行)。在VBA中,我们通常用换行符分隔语句,但是也可以使用冒号。尽管这通常不太容易阅读。再次抓取同一行代码:

b = b - 1: GoTo x

is equivalent to

b = b - 1
GoTo x

答案 1 :(得分:2)

在此,“两个点”或冒号是语句的定界符。这是在一行中编写多行VBA代码的一种简便方法。例如...

b = b - 1: GoTo x

等同于

b = b - 1

GoTo x

Excel VBA Pound and Colon Signs Meaning?