上一章分享了"边做"循环结构的含义以及如何使用它,今天本章分享了每个VBA的基本语法...后续功能,使用说明等。
让我们首先看一下 For Each 结构的含义:
对于组合的每个元素变量(可以是集合或数组)
要执行的语句块
退出
下一个元素变量
以下是屏幕截图以获取特定解释:
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyYw1TbvJnZ-QmZ3MTO0YDO1IzNmJDMmFWN4kDNyIjY5ITNlhTO2EzNvwVZnFWbp1yYnB3Lc5Wanlmcv9CXt92YucWbp9WYpRXdvRnL1A3Lc9CX6MHc0RHaiojIsJye.jpg)
注意:对于每个....Next比其他循环结构更灵活,并且不需要任何循环判断,特别是当循环数组或集合就位时。还有一个事实是,当数组被循环时,数组的值不能被修改,对于已经具有值的数组,元素的属性只能被修改(即,前面的示例,更改字体颜色等)。
让我们举一个简单的例子来看看效果:
接下来是列 A 中具有多个名称的单元格(无论名称是否重复)
我们需要做的就是使用这个刚刚学会的循环结构将数据输出到表中。
以下是解释代码的方法:
代码 1:
亚铁()
Dim i As Integer, k As Integer, j As Variant, b As Integer
Dim shuzu() 作为变体
b = WorksheetFunction.CountA(Range("A:A"))
ReDim shuzu(1 To b) 作为变体
对于 k = 1 到 b
shuzu(k) = Cells(k, 1)
下一个
i = 1
对于每个 j 在 shuzu
单元格(i, 2) = j
i = i + 1
结束子
举另一个常见的例子(这没有什么实际意义,主要是要理解如何使用For each loop结构):
用于每个....接下来编写一个程序,该程序将 1 到 20 的整数输出到单元格 A1 到 A20。
代码 2:
Sub sh()
Dim k As Range, j As Integer
j = 1
对于范围内的每个 k("A1:A20")
k.值 = j
j = j + 1
注意:其中的输出将位于活动表的单元格中(活动是指您正在打开和处理的表),您可以尝试切换到该工作表,结果将被输出。
今天在这里分享,喜欢请大家注意,谢谢!
明天继续分享