zoukankan      html  css  js  c++  java
  • VBA 学习笔记 判断语句、循环

    判断语句

    大部分和 Lua 差不多,多了一个 Switch 语句

    循环

    For 循环

    多次执行一系列语句,缩写管理循环变量的代码。
    For i = start To end [Step X]...Next

    Private Sub Constant_demo_Click()
       Dim a As Integer
       a = 10
    
       For i = 0 To a Step 2
          MsgBox ("The value is i is : " & i)
       Next
    End Sub
    

    For Each 循环

    主要用于数组,如果组中至少有一个元素并为组中的每个元素重复执行,则执行此操作。

    For Each element In Group
       [statement 1]
       [statement 2]
       ....
       [statement n]
       [Exit For]
       [statement 11]
       [statement 22]
    Next
    
    Private Sub Constant_demo_Click()  
       'fruits is an array
       fruits = Array("苹果", "橙子", "樱桃")
       Dim fruitnames As Variant
    
       'iterating using For each loop.
       For Each Item In fruits
          fruitnames = fruitnames & Item & Chr(10)
       Next
    
       MsgBox fruitnames
    End Sub
    

    While ... Wend 循环

    在执行循环体之前测试条件

    Private Sub Constant_demo_Click()
       Dim a As Integer
       a = 10
    
       For i = 0 To a Step 2
          MsgBox ("The value is i is : " & i)
       Next
    End Sub
    

    Do...While循环

    只要条件为 True 就会被执行(即,)循环应该被重复直到条件为 False。
    相当于 Lua 中的 while true do ... end

    Private Sub Constant_demo_Click()
       Do While i < 5
          i = i + 1
          msgbox "The value of i is : " & i
       Loop
    End Sub
    

    do…until 循环

    只要条件是 False,do..Until 语句就会被执行(即,)循环应该被重复直到条件为真。

    循环控制

    相当于 Lua 中的 break

    Exit For 语句

    Private Sub Constant_demo_Click()
       Dim a As Integer
       a = 10
    
       For i = 0 To a Step 2 
    'i is the counter variable and it is incremented by 2
          MsgBox ("The value is i is : " & i)
          If i = 4 Then
             i = i * 10 
    'This is executed only if i=4
             MsgBox ("The value is i is : " & i)
             Exit For 'Exited when i=4
          End If
       Next
    End Sub
    

    Exit Do 语句

    Private Sub Constant_demo_Click()
       i = 0
       Do While i <= 100
          If i > 10 Then
             Exit Do   ' Loop Exits if i>10
          End If
          MsgBox ("The Value of i is : " & i)
          i = i + 2
       Loop
    End Sub
    
  • 相关阅读:
    每日一题20201109(15. 三数之和)
    每日一题20201106(169. 多数元素)
    每日一题之20201103(941. 有效的山脉数组)
    每日一题之20201102(349. 两个数组的交集)
    【USACO4.4】追查坏牛奶
    【九省联考2018】一双木棋
    【NOI2013】向量内积
    【HNOI2013】游走
    【ZJOI2008】骑士
    【HEOI2014】大工程
  • 原文地址:https://www.cnblogs.com/lisaisacat/p/12322615.html
Copyright © 2011-2022 走看看