vba不等于_VBA中的循环语句

循环语句是很多人开始使用VBA的理由,因为在批量处理大量数据的多条件判断时,函数已经没办法满足我们的需求了。而VBA可以使用简单的循环完成这一工作。

循环语句

3a005fd64dd16f6ac0c6c4e5a7b30155.gif

1.

For...Next语句

    在上一篇我们介绍判断语句的时候,就使用了For..Next的循环语句,在这里简单的讲一下。

2c74823a6d510fee3eeb581236e68d39.png

案例中循环语句的意义是,设置n=1到6的循环,每次循环分别在F2到F7单元格中输入判断值。 For n = 1 to 6 :For是循环语句的开始,对于变量1等于1到6,从n=1开始进行下面的判断 。 我们也可以设置循环的步长: For n = 1 to 6 step 2 ,也就是变量从1开始步长为2,在6结束的循环语句。 Next,n=1的这一轮判断结束,进行n=2的下一轮判断。 不过,For Next 语句有一个缺点,就是我们必须知道循环变量的终止值,如果我们的数据是动态的,就很难提前预知循环变量的终止值。这时,我们可以使用下面要介绍的Do While Loop 循环语句。

2.

Do...While...Loop语句

作为循环语句的开始,当Do Whlie后面跟着的逻辑表达式为True时,进行循环,否则停止循环。

下面的案例中,就是当D列的某个单元格不为空时,进行循环,当执行到Loop时,返回Do While进行判断,一定要注意结束循环的条件,否则这个语句很容易出现无限循环无法终止的问题。

626221cd25b21890b5fe368883df004b.png

3.

Do...Until...Loop语句

这个语句的用法与Do Whlie Loop语句正好相反,Do While语句是当逻辑表达式的值为False时退出循环,而Do Until 语句是当逻辑表达式的值为True时退出循环。

2e75888887b115f249df174120d3b523.png

4.

For...Each...Next语句

当我们明确要在一个数组里进行循环的时候,我们可以使用For Each Next语句,这个语句不需要定义循环条件。

看一下下面的案例:

dd2a7174238edaf9a33a571ead08169b.png

定义m作为一个区域,对于单元格F2:F6中的每个单元格进行循环判断。

END

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
SystemVerilog听课学习笔记,包括讲义截取、知识点记录、注意事项等细节标注。 目录如下: 第一章 SV环境构建常识 1 1.1 数据类型 1 四、二值逻辑 4 定宽数组 9 foreach 13 动态数组 16 队列 19 关联数组 21 枚举类型 23 字符串 25 1.2 过程块和方法 27 initial和always 30 function逻辑电路 33 task时序电路 35 动态 静态变量 39 1.3 设计例化和连接 45 第二章 验证方法 393 动态仿真 395 静态检查 397 虚拟模型 403 硬件加速 405 效能验证 408 性能验证 410 第三章 SV组件实现 99 3.1 接口 100 什么是interface 101 接口优势 108 3.2 采样和数据驱动 112 竞争问题 113 接口时序块clocking 123 利于clocking驱动 133 3.3 测试开始和结束 136 仿真开始 139 program隐式结束 143 program显式结束 145 软件域program 147 3.4 调试方法 150 第四章 验证计划 166 4.1 计划概述 166 4.2 计划内容 173 4.3 计划实现 185 4.4 计划进程评估 194 第五章 验证管理 277 6.1 验证周期检查 277 6.2 管理三要素 291 6.3 验证收敛 303 6.4 问题追踪 314 6.5 团队建设 321 6.6 验证专业化 330 第六章 验证平台结构 48 2.1 测试平台 49 2.2 硬件设计描述 55 MCDF接口描述 58 MCDF接口时序 62 MCDF寄存器描述 65 2.3 激励发生器 67 channel initiator 72 register initiator 73 2.4 监测器 74 2.5 比较器 81 2.6 验证结构 95 第七章 激励发生封装:类 209 5.1 概述 209 5.2 类成员 233 5.3 类继承 245 三种类型权限 protected/local/public 247 this super 253 成员覆盖 257 5.4 句柄使用 263 5.5 包使用 269 第八章 激励发生随机化 340 7.1 随机约束和分布 340 权重分布 353 条件约束 355 7.2 约束块控制 358 7.3 随机函数 366 7.4 数组约束 373 7.5 随机控制 388 第九章 线程与通信 432 9.1 线程使用 432 9.2 线程控制 441 三个fork...join 443 等待衍生线程 451 停止线程disable 451 9.3 线程通信 458 第十章 进程评估:覆盖率 495 10.1 覆盖率类型 495 10.2 功能覆盖策略 510 10.3 覆盖组 516 10.4 数据采样 524 10.5 覆盖选项 544 10.6 数据分析 550 第十一章 SV语言核心进阶 552 11.1 类型转换 552 11.2 虚方法 564 11.3 对象拷贝 575 11.4 回调函数 584 11.5 参数化类 590 第十二章 UVM简介 392 8.2 UVM简介 414 8.3 UVM组件 420 8.4 UVM环境 425
©️2020 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页