Excel VBA学习笔记(六):VBA中的循环语句

介绍四种循环语句的语法:

一、For 循环语法: For 变量=数值 to 数值 Step 步值

“需要执行的语句'

Next 变量

Next 后面的”变量名“,经常被省略。Step 步值 ,省略不写的情况下,变量每次循环后,数值增加1;写上Step 2,那么每次循环 变量+2。步值也可以为负数,如Step -1 ,变量在赋值时,先赋值大数值,往小方向变化。

For i = 10 To 2 Step -1 '倒序循环 Set Rng = Cells(i, n) ' i 为行号,从下往上,i 值不断减小 If Rng = Rng.Offset(-1) Then '当前单元格与其上单元格相同就合并单元格 Rng.Offset(-1).Resize(2).Merge End IfNext

二、For Each 循环:For Each 变量 IN 对象集合

“需要执行的语句'

Next 变量

注意这里的变量要是对象变量(变量通过set 语句赋值的),同上面的FOR循环语句不同,FOR之后的变量代表数值,这里的变量代表的是对象。单元格、单元格区域、工作表 这些才是对象。不能写 For each i In [1-10] *** Next 这样的语句。下面For each 示例

// 依据 f2:f23 单元格的内容生成多个工作表,名称就是f2:f23 单元格的内容  For Each rng In [f2:f23]    'rng 单元格对象    Worksheets.Add after:=Sheets(1)  '增加一张工作表,放在第1张工作表之后    Sheets(2).Name = rng  Next rng       '可只写 Next

For 或 For Each 都是限定范围的循环语句,Do ... Loop 循环属于无限定范围的循环语句(无限循环)。为了使循环有意义,需加条件让循环退出,于是就有

三、Do While 条件表达式(表达式的值要为逻辑值,为TRUE才执行循环)

“需要执行的语句'

LOOP

注意,循环体里的语句,必定会对条件产生影响,导致条件能不成立,不然就成死循环了。

四、 Do

“需要执行的语句'

LOOP Until 条件(表达式的值要为逻辑值,为TRUE就会退出循环)

同样要注意避免产生死循环。

While 与 Until 都可写在 DO 的后面或是 Loop 后面,功效是一样的。只是通常写法:While写在Do后,Until 写在 Loop后。

(0)

相关推荐

  • VBA 程序循环结构

    VBA 中,循环结构用于多次重复执行同一段代码.重复次数通过特定数字或特定条件控制. 通过控制循环过程中特定变量,循环结构可执行复杂的重复任务. 循环结构的执行流程可简单的表示如下: 本文目录 隐藏 ...

  • Excel VBA学习笔记:VBA如何选取工作簿文件,打开工作簿

    工作中,打开某个工作簿,提取其中数据这样的操作用 VBA 代码如何完成?首先得用VBA控制打开指定的工作簿.下面介绍两种方法. 方式一: GOF = Application.GetOpenFilena ...

  • EXCEL VBA学习笔记:Collection 集合

    Collection 集合的意思,是一个对象.指用户将一组数据信息,存放于一个"一维数组"中,以便用户随时访问.增添.删除:这样的一个集合体. 集合对象对存放在其中的数据类型,没有 ...

  • Excel VBA学习笔记(一):单元格、单元格区域的表达式

    EXCEL表格中我们要处理的数据都位于单元格中,单元格及单元格区域怎么表示,就是VBA代码的基本了.下面讲解几种常用的单元格.单元格区域语法表达式. 1.[A1] 最简单写法.中括号,里面写上单元格地 ...

  • 【原创】VBA学习笔记(12)VBA的数组 array

    一 数组 array 1.1 什么是数组?具体的例子 以这个语句为例子 arr1=array(1, 2, 3) 左边:变量名=数组名 右边:数组,集合,多个元素集合,多个数据集合, 右边的单个内容,1 ...

  • C#线程学习笔记六:线程同步--信号量和互斥体

    本笔记摘抄自:https://www.cnblogs.com/zhili/archive/2012/07/23/Mutex_And_Semaphore.html,记录一下学习过程以备后续查用.     ...

  • 学习笔记 | 家庭训练中的情绪调整

    2020年春节前夕,"新型冠状病毒"爆发,线下培训机构被迫停课,更多的孤独症孩子家长将目光投向远程家庭干预. A-IFSP-ASD已经进行了数日,在过去的这段时间里,凭着对孩子的爱 ...

  • 辅行诀大小泻肾汤学习笔记(六)

    五.肾之虚实为病 <辅行诀>云:肾气虚则厥逆,实则腹满,面色正黑,泾溲不利. 肾病者,必腹大胫肿,身重,嗜寝:虚则腰中痛,大腹小腹痛,尻阴.股.膝挛,胻足皆痛. 邪在肾,是骨痛,阴痹.阴痹 ...

  • IOS之学习笔记六(可变形参)

    IOS之学习笔记六(可变形参)

  • 甲状腺体系化课程--学习笔记六--非滤泡上皮来源肿瘤

    在10月25日上线的甲状腺病理学体系化课程中,朱雄增教授为我们讲述了甲状腺肿瘤性病变-非滤泡上皮来源肿瘤. 本期小衡继续分享来自复旦大学附属肿瘤医院的郑强老师的学习笔记,希望下次你也能和我们一起分享~ ...