VBA基础学习之循环语句
当需要多次执行一段代码时 , 就可以使用循环语句 。一般来说 , 语句是按顺序执行的:函数中的第一个语句首先执行 , 然后是第二个 , 依此类推 。
编程语言提供了各种控制结构 , 允许更复杂的执行路径 。
循环语句允许多次执行语句或语句组 。以下是VBA中循环语句的一般形式 。
1.5.1 For 循环
for循环是一种重复控制结构 , 它允许开发人员有效地编写需要执行特定次数的循环 。
For counter = start To end [Step stepcount][statement 1][statement 2]....[statement n][Exit For][statement 11][statement 22]....[statement n]Next
以下是For循环中的控制流程 -
Private Sub Constant_demo_Click()Dim a As Integera = 10For i = 0 To a Step 2MsgBox ("The value is i is : " & i)NextEnd Sub
1.5.2 For Each循环
For Each循环用于为数组或集合中的每个元素执行语句或一组语句 。
For Each循环与For循环类似; 然而 , 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 arrayfruits = Array("苹果", "橙子", "樱桃")Dim fruitnames As Variant'iterating using For each loop.For Each Item In fruitsfruitnames = fruitnames & Item & Chr(10)NextMsgBox fruitnamesEnd Sub
1.5.3 While Wend循环
在While…Wend循环中 , 如果条件为True , 则会执行所有语句 , 直到遇到Wend关键字 。
如果条件为false , 则退出循环 , 然后控件跳转到Wend关键字后面的下一个语句 。
While condition(s)[statements 1][statements 2]...[statements n]Wend
Private Sub Constant_demo_Click()Dim Counter :Counter = 10While Counter < 15' Test value of Counter.Counter = Counter + 1' Increment Counter.msgbox "The Current Value of the Counter is : " & CounterWend' While loop exits if Counter Value becomes 15.End Sub
1.5.4 Do…While循环
一个Do…while循环用于只要条件为真就重复一组语句 。该条件可以在循环开始时或循环结束时检查 。
Do While condition[statement 1][statement 2]...[statement n][Exit Do][statement 1][statement 2]...[statement n]Loop
Private Sub Constant_demo_Click()Do While i < 5i = i + 1msgbox "The value of i is : " & iLoopEnd Sub
另外还有一个替代语句Do…while循环 , 用于在循环结束时检查条件 。下面的例子解释了这两种语法的主要区别 。语法 -
Do [statement 1][statement 2]...[statement n][Exit Do][statement 1][statement 2]...[statement n]Loop While condition
Private Sub Constant_demo_Click() i = 10Doi = i + 1MsgBox "The value of i is : " & iLoop While i < 3 'Condition is false.Hence loop is executed once.End Sub
1.5.5 Exit For语句
当想要根据特定标准退出For循环时 , 就可以使用Exit For语句 。当执行Exit For时 , 控件会立即跳转到For循环之后的下一个语句 。
- 文学好书榜|2023年5月榜单出炉! 世界十大文学
- [数]被数学淹没不知所措
- 人可以多久不休息?一美国学生靠毅力撑了264小时,结果如何了? 吉尼斯记录浪费
- 寺湾一校一品:罗岗中心小学:感恩润泽心灵,特色铸就品牌 六 世界之最手抄报
- 专家学者:英语是世界上最伟大的语言,汉语就不应该存在! 世界之最英语
- 中石油管道焊接学徒,供热管道焊接要求
- 纯文学期刊排名,有哪些純文學的雜誌?
- 皇后求子为何遭唐玄宗废黜?咒语称要学武则天
- 歌唱家金婷婷歌唱技法优缺点分析及其学习注意事项 金婷婷的中国之最
- 拜登带美军雄踞世界!媚外学者狂捧中国粉丝高喊“伟大总统” 拜登历史之最