问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

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

发布网友 发布时间:2024-09-30 14:56

我来回答

1个回答

热心网友 时间:2024-11-07 20:12

第一部分: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的结果值。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
樱花虾 和哪些虾混养 MacBook怎样安装telnet服务器端工具。 如何在MacBook上安装telnet工具? 如何在Mac上安装telnet 如何在MacBook上安装telnet客户端软件? mac下sftp工具,远程连接windows工具有哪些? 怎样在Mac下使用telnet工具? 一个监理可以同时担任几个项目 二本临床读研毕业能去三甲吗 二本医学毕业生好就业吗? 肛门上长了一个小肉球怎么办 oppoa92s和vivos6对比 什么人不能吃荠菜(荠菜哪些人不适合吃) 梦见我家墙里有三条金灿烂的蛇 助理工程师职称的评定条件有哪些? ABAP字段显示是结构里的,怎么去找到这个表? abap tables 数据元素quan怎么用 在abap中定义数据元素时指定域与不指定域的区别 《青春期》3和《上位》到底什么时候上映???跪求真实日期!!!谢绝骗子... 什么是 ABAP 数据库表的 Input Help/Check 请问赵奕欢演的《青春期3》和《上位》分别于哪一天播出? 欢欢的《青春期3》 《上位》《巴沙女警》 哪个上映了? 我怎么一个都没... 华为新台式机搭载多少核心的鲲鹏920处理器? 华为鲲鹏920支持windows吗 鲲鹏920干啥用的 开茶叶店怎么经营?且看这十大经验…… 如何开茶楼赚钱 大姨爹是指什么是什么意思 健身房减肥秘籍 苹果手机丢了如何防止别人使用? 肛门长了一个小肉球怎么办 怎样在excel中高亮显示所在的行列 肛门长了一个小肉球怎么回事 在Excel中怎样提取一列中的部分内容? excel怎么抽取对应列的数据excel怎么抽取对应列的数据和数据 oppo手机怎么样知乎oppo手机怎么样质量好么 excel怎么抓取目标列对应行的数据excel如何抓取数据 请问电梯调试与电梯销售,哪个比较有发展前景?优缺点是? 电梯调试员前景如何 散户如何寻找短线机会 股票短线怎么做? 笔记本电脑的home键在哪里啊? 华为笔记本电脑home键在哪里? 笔记本电脑home键在哪儿 单模模块和多模模块的区别 这是个什么物件 收拾老房子看到的 扔了还是留着 收拾老房子发现的铜币? 收拾老房子找到的,帮忙看看东西怎么样。谢谢 小米10至尊纪念版哗啦哗啦的响声怎么关闭? 梦见梦中的情人(他)成了我过逝的父亲,坐卧在家院的躺椅上看我,院内...