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循环中的控制流程 -

  • For步骤先执行。这一步允许您初始化任何循环控制变量,并递增步进计数器变量。
  • 其次,评估条件。 如果评估结果为:True,则循环体被执行。 如果为False,则循环体不会执行,并且控制流将跳转到紧跟在For循环之后的下一个语句。
  • 在执行For循环体之后,控制流将跳转到下一个语句。 这个语句更新任何循环控制变量。 它根据步计数器值进行更新。
  • 现在条件再次评估。 如果条件为:True,则循环执行并且该过程重复自身(循环体,然后递增步,然后再次条件)。 条件变为False后,For循环终止。
Private Sub Constant_demo_Click()Dim a As Integera = 10For i = 0 To a Step 2MsgBox ("The value is i is : " & i)Next
End 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 fruitnames
End 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 = 10   While 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 : " & iLoop
End 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循环之后的下一个语句。

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

1.5.6 Exit Do语句
当想要根据特定标准退出Do循环时,可使用Exit Do语句。 它可以同时用于Do…While和Do…Until直到循环。

当Exit Do被执行时,控制器在Do循环之后立即跳转到下一个语句。

Private Sub Constant_demo_Click()i = 0Do While i <= 100If i > 10 ThenExit Do   ' Loop Exits if i>10End IfMsgBox ("The Value of i is : " & i)i = i + 2Loop
End Sub

VBA基础学习之1.5循环语句相关推荐

  1. python for loop循环程序语句_零基础学习 Python 之 for 循环语句

    写在之前 大家好,这里是零基础学习 Python 系列,在这里我将从最基本的Python 写起,然后再慢慢涉及到高阶以及具体应用方面.我是完全自学的 Python,所以很是明白自学对于一个人的考验,所 ...

  2. python 动态执行条件判断_【人生苦短,我学 Python】基础篇——条件判断与循环语句(Day12)_不积跬步,无以至千里!-CSDN博客...

    原文作者:AI 菌 原文标题:[人生苦短,我学 Python]基础篇--条件判断与循环语句(Day12) 发布时间:2021-02-08 23:17:06 写在前面:大家好!我是[AI 菌],一枚爱弹 ...

  3. VBA基础学习之1.2输入框(InputBox)

    VBA基础学习之输入框(InputBox) InputBox函数提示用户输入值.当输入值后,如果用户单击确定 按钮或按下键盘上的ENTER 键,InputBox函数将返回文本框中的文本.如果用户单击& ...

  4. Python基础(十二)——循环语句

    本文以Python3以上为学习基础. 目录 1.使用循环的第一原则 2.while循环 2.1 while 和 循环控制语句(break.continue.pass) 3.for循环 3.1 rang ...

  5. Python3 基础学习笔记 C04【if 语句】

    CSDN 课程推荐:<8小时Python零基础轻松入门>,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员:已出版<跟老齐学Python:轻松入门& ...

  6. java基础知识点(6)——循环语句for-while

    循环语句for-while 一.循环结构 1.for语句 1.格式 2.执行流程: 3.说明: 4.代码示例 5. for语句格式的注意事项 2. 嵌套循环 2.1 概念 2.2 格式 2.3 执行流 ...

  7. 《Python基础知识-4判断和循环语句》

    1 判断(分支)语句 1.1 if 语句 1)简单 if 语句   在Python中,if 语句就是用来判断的,格式如下: if 要判断的条件:条件成立时,要做的事情...   例如: In [1]: ...

  8. Python基础笔记_Day03_while、for循环语句、range

    Day03_while.for循环语句.range 03.01_Python语言基础(循环语句)(掌握) 03.02_Python语言基础(while概述)(掌握) 03.03_Python语言基础( ...

  9. JavaScript 基础(十):循环语句

    2019独角兽企业重金招聘Python工程师标准>>> 一.循环 1.1.for 循环 很多事情不只是做一次,要重复做.如打印10份试卷,每次打印一份,重复这个动作,直到打印完成.这 ...

最新文章

  1. python中map()函数使用方法
  2. 微积分学习笔记四:空间向量基础
  3. Wireshark数据抓包教程之Wireshark捕获数据
  4. MIT、CMU 美国计算机专业最牛20名学校大点评
  5. Java开发中文件读取方式总结
  6. B2.Java代码查错
  7. shell 循环控制语句
  8. 互联网小团队创业启示录
  9. 1个平方大概多少立杆_普通水泥地面一平方大概要用多少地板漆
  10. IS技术:稳定压倒一切
  11. 制作简易的幸运转盘抽奖
  12. 「ZigBee模块」基础实验(4)定时器T1的简单应用
  13. 刘宇凡:我是一只特立独行的猪
  14. Pixelmator for Mac v3.9.9 功能强大的图像编辑软件
  15. springboot中 @Imput与@EnableConfigurationProperties区别
  16. Tkinter Canvas画布 图片导入
  17. C++游戏——小胎大乱斗
  18. C语言的函数是什么?
  19. 从零开始研发GPS接收机连载——7、跟踪模块概述和设计
  20. Android自定义SurfaceView简单实现烟花效果

热门文章

  1. 防喘振原理与现场测试
  2. 苹果开发者防关联开新号自查清单
  3. 优质网站资源推荐2.0
  4. 联想android刷机教程,联想手机怎么刷机 联想手机刷机教程
  5. 吉林市职称计算机考试,吉林人事考试网
  6. java函数接口和方法引用
  7. Android mk详解
  8. Toronto Research Chemicals 对乙酰氧基苯乙酮说明书
  9. 如何优化一段VBA:去掉有且只有2个或者1个数字的行
  10. 胖虎算法初练六之——外观数列