zoukankan      html  css  js  c++  java
  • excel的宏与VBA入门(三)——流程控制

    一、条件控制IF

    if  逻辑表达式 then
                                  语句块
    end if

      带else的if语句:

     If  逻辑表达式1 Then  
                                  语句块1
                      ElseIf  逻辑表达式2  Then 
                                  语句块2
                      ElseIf  逻辑表达式3 Then 
                                  语句块3
                       …
                     Else
                                 语句块n
     End If

    二、条件判断Select/Case

    Select Case 测试表达式
            Case 条件表达式1
                  语句块1
            Case 条件表达式2
                  语句块2
           Case 条件表达式3
                  语句块3
           ......
           Case 条件表达式n
                  语句块n
           Case Else
                  语句块Else
         End Select.

      示例:

    Sub test()
      If [a1].Value = "" Then
          MsgBox "A1单元格没有输入数字。"
          Exit Sub '     退出程序
      End If
      Select Case [a1].Value
          Case 0 To 29
              MsgBox ""
          Case 30 To 59
              MsgBox "不及格"
          Case 60 To 79
              MsgBox "及格"
          Case 80 To 89
              MsgBox "良好"
          Case Else
              MsgBox "优秀"
      End Select
    End Sub

    三、循环控制For/Next

     For 循环变量=初值 to 终值 step 步长
           循环体1
          [exit for]
          循环体2
      next 循环变量   

      示例:(步长默认为1,next后的循环变量可以省略 )

    Sub mysum()
      Dim Lsum As Long, i As Long
      For i = 1 To 1000
          Lsum = Lsum + i
      Next
      MsgBox "1到1000的自然数和为:" & Lsum
    End Sub

      //更多实例,参考开篇链接

    四、循环控制For/Each

    For Eacn 元素变量 In 对象集合或数组名称
          语句块1
          [Exit For]
          语句块2
    next 元素变量

      //与上一个循环类似,这里采用元素变量从对象集合中取得方式

    五、循环控制Do/While

     Do Wihle 循环条件
                语句块1
               [Exit Do]
                语句块2
          Loop
    
      Do 
                语句块1
               [Exit Do]
                语句块2
           Loop Wihle 循环条件

      //示例暂略

    六、循环控制Do/Until

    Do Until 循环条件
                语句块1
               [Exit Do]
                语句块2
          Loop
       
    
     Do 
                语句块1
               [Exit Do]
                语句块2
           Loop Until 循环条件

      //与Do/While相反的是为真时退出

    七、循环控制GoTo

    Sub mysum()
    Dim Lsum As Long, i As Long
    i = 1
    x: '为go to 语句设置的标签,必须以英文状态下的冒号结尾
       Lsum = Lsum + i
       i = i + 1
    If i <= 1000 Then GoTo x '如果i<=1000,则程序跳到标签X处
    MsgBox "1到1000的自然数和为:" & Lsum
    End Sub
  • 相关阅读:
    LeetCode(287)Find the Duplicate Number
    LeetCode(290) Word Pattern
    LeetCode(205)Isomorphic Strings
    LeetCode(201) Bitwise AND of Numbers Range
    LeetCode(200) Number of Islands
    LeetCode(220) Contains Duplicate III
    LeetCode(219) Contains Duplicate II
    命令行执行Qt程序
    LeetCode(228) Summary Ranges
    redis 的安装和使用记录
  • 原文地址:https://www.cnblogs.com/jiangbei/p/9359664.html
Copyright © 2011-2022 走看看