本站资源收集于互联网,不提供软件存储服务,每天免费更新优质的软件以及学习资源!

excelVBA中for循环语句的用法_并通过两个小实例来理解fornext循环语句

电脑教程 jiaocheng 1℃

excelVBA中for循环语句的用法_并通过两个小实例来理解fornext循环语句

第一部分:for next循环语句用法和理解

  VBA中for循环语句是程序流程控制语句。For Next 循环语句是编程中几乎不可缺少的语句。

  什么是循环语句呢?循环语句就是指重复地执行语句块。

  理解for next循环语句,有一个经典的解释。两万米长跑比赛,每圈400米。一圈,两圈,三圈……直到跑满50圈才停止。就是在循环地在跑道上执行跑步的动作。

  for next循环语句的句式如下:

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

  for next循环语句句式理解:
  从开始到结束,反复执行For和Next之间的指令块,除非遇到Exit For语句,将提前跳出循环。
  其中,步长和Exit For语句以及Next后的循环变量均可省略,步长省略的时候默认为1。
  Exit for 语句是强制终止循环的语句,执行它后将退出循环,执行next后面的语句。

  对for next循环语句句式进行了初步的认识后,用这个句式来叙述上面跑步的问题,将其编成程序,20000米,要跑50圈,也就是要50次,跑1圈,2圈。。。。直到满50圈才停止循环跑步,当然,如果要提前退赛,就不用跑满50圈了。for next循环语句程序可以写成:

Sub 循环跑步()
dim 圈数 as byte
for 圈数=1 to 50 step 1
If 学生.要求=退赛
exit for
End If
Next 圈数
End Sub

  这不是一个完整的程序,只是帮助对For next循环语句的理解而已。

第二部分:for next循环语句实例练习

1.从A1单元格开始,对角线生成1-20的数字。要求:用一段fox next循环语句程序生成。

代码如下:
Sub 循环()
Dim a As Byte
For a = 1 To 20 Step 1
Cells(a, a) = a
Next a
End Sub

代码解释:
  sub 和end sub之间是一个过程
  Dim a As Byte:申明变量a的类型为byte。如果省略此句,不做申明,变量将被指定为Variant类型,因为VBA中默认的数据类型是Variant。
  关于变量类型,参考《excel中vba变量类型小结》
  下面的For next是VBA中for next循环语句。
  for next循环语句的句式如下:
For 循环变量=初值 to 终值 step 步长
循环体1
[exit for]
循环体2
next 循环变量
  Cells(行,列) 表示单元格地址。

  上面的代码,按F8键,逐语句测试,如下图所示:

  For next循环语句第一次循环结束,得到结果A1为1。就是变量a第一次的值为1,将值套进单元格就是cells(1,1)=1,所以A1为1。

  继续按F8键,第二次到next a时,B2为1。这时变量a第二次循环的值为2,将值套进单元格就是cells(2,2)=2,所以B2为2。

  以此类推,继续循环下去,直到变量a的终止值20,结束循环。

  下面这段代码的运行结果等同于上面的代码:

Sub 循环()
For a = 1 To 20
Cells(a, a) = a
Next
End Sub

2.1到100的自然数和

代码如下:
Sub 求和()
Dim a As Long, i As Integer
For i = 1 To 100 Step 1
a = a + i
Next i
MsgBox "1到100的自然数和:" & a
End Sub

解释:先申明变量类型,然后是一个for next循环体,i的值为1到100,变量a的值为a+i,然后用消息框输出循环之后a的结果值。

转载请注明:范的资源库 » excelVBA中for循环语句的用法_并通过两个小实例来理解fornext循环语句

喜欢 (0)