控制命令我们分成两个部分:判断选择命令循环命令


判断命令

  1. 判断命令主要是对某个条件的不同结果,分别执行不同的操作。脚本是否足够智能,就体现在判断命令是否用的好

复制代码

命令名称 if…end if
命令功能 判断表达式并执行语句
命令参数 条件表达式
返回值

范例一 :

  1. Dim a,b
  2. a = 1
  3. b = 2
  4. If a > b Then
  5. TracePrint “a > b”
  6. Else
  7. TracePrint “a < b”
  8. End If

复制代码

这个就是最简单的一种判断范例,当表达式成立的时候就执行下面的语句,否则就执行else后面的语句。
范例二 :

  1. Dim a
  2. a = true
  3. If a Then
  4. TracePrint “a = true”
  5. Else
  6. TracePrint “a = false”
  7. End If

复制代码

上面这个例子中,If a Then 等于 If a = true Then
范例三 :

  1. Dim a
  2. a = 2
  3. If a = 1 Then
  4. TracePrint “a = 1”
  5. ElseIf a = 2 Then
  6. TracePrint “a = 2”
  7. Else
  8. TracePrint “a”
  9. End If

复制代码

上面范例中 elseif 表示不同的条件判断:如果……则……否则……
按键会从上到下逐一判断,当第一个表达式不成立,就判断第二个表达式,直到有表达式成立或者全部表达式都不成立的时候就结束判断

命令名称 select case
命令功能 情况条件选择
命令参数 变量:任意有效变量,检查是否与下面值相等。
值:任意有效值,不支持判断语句,多个值用逗号“,”隔开表示逻辑运算中的“或”运算。
执行语句:任意有效代码语句。
返回值

范例 :

  1. Dim a
  2. a = 2
  3. Select Case a
  4. Case 1
  5. TracePrint “a = 1”
  6. Case 2
  7. TracePrint “a = 2”
  8. Case 3
  9. TracePrint “a = 1”
  10. Case Else
  11. TracePrint a
  12. End Select

复制代码

上面范例中,就是根据a的值的不同来执行对应的语句。当a=1时执行traceprint “a=1″…以此类推。当一个变量可能有多个不同值,并且不同的值对已对应不同的处理时,就很适合使用这种条件语句。


循环命令

命令名称 do…loop
命令功能 无限循环
命令参数 参数1 条件:判断条件表达式
参数2 循环体:任意有效代码语句
返回值

无限循环 :

  1. Do
  2. TracePrint “无限循环开始”
  3. Delay 1000
  4. Loop

复制代码

这种循环启动后就会一直循环下去
条件成立时循环:

  1. Dim i=0
  2. Do While i=0
  3. TracePrint “循环开始”
  4. Delay 1000
  5. Loop

复制代码

这种循环体是只有当while后面的表达式成立后才会执行里面的循环,每次循环都会判断表达式一次
条件不成立时循环 :

  1. Dim i=0
  2. Do Until i=0
  3. TracePrint “循环开始”
  4. Loop
  5. TracePrint “循环结束”

复制代码

这种循环体是当until后面表达式不成立才会执行循环。

  1. Dim i=1
  2. Do
  3. If i > 5 Then
  4. TracePrint “退出循环”
  5. Exit Do
  6. End If
  7. Loop

复制代码

上面范例中的exit do 表示退出当前的do循环。exit do 这个命令只能用来退出当前所在的循环

命令名称 While..Wend
命令功能 条件循环语句
命令参数 参数1 :表达式
返回值

范例:

  1. Dim i=0
  2. While i=0
  3. TracePrint “循环开始”
  4. Wend

复制代码

这个命令和do while 的用处一样,都是当条件成立后执行语句

命令名称 For
命令功能 循环一定次数
命令参数 参数1 :循环次数
返回值

循环固定次数:

  1. For 10
  2. TracePrint “循环10次”
  3. Delay 200
  4. Next

复制代码

计次循环:

  1. For i = 0 To 10
  2. TracePrint “循环第:” & i & “次”
  3. Delay 200
  4. Next
  5. For i = 0 To 10 Step 2
  6. TracePrint “当前i的值是:” & i
  7. Delay 200
  8. Next
  9. For i = 10 To 0 Step -2
  10. TracePrint “当前i的值是:” & i
  11. Delay 200
  12. Next

复制代码

范例中的循环是计次循环的,上面代码中是设定一个变量 i 的初始值是 0 每次循环 i 的值都加1 ,直到 i 的值为10 为止。step 表示“步长”,step 2 就是表示每次循环 i 的值加2。
如果没有定义 i 的话,那这个循环里的变量 i 就是循环里的局部变量。如果定义了变量 i ,则这个 i 就是全局变量

命令名称 For Each … In
命令功能 遍历数组
命令参数 参数1 变量名,临时数组元素
参数2 数组,待遍历数组
返回值

范例:

  1. Dim arr=array(1,3,5,3,6)
  2. For Each v In arr
  3. TracePrint v
  4. Next

复制代码

这个命令是用来遍历出数组中的每个元素内容。其中变量 v 是属于这个循环内的局部变量。

声明:
本站所有文章,如无特殊说明或标注,均为本站原创发布。
任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。
如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。