如何使用 vba 导航范围?
要在 VBA 中循环某个范围,需要使用“For Each Loop”选项。使用此循环,您可以编写代码,告诉 VBA 遍历区域、列或行中的每个单元格并执行特定活动。
Sub vba_loop_range() Dim iCell As Range For Each iCell In Range("A1:A10").Cells iCell.Value = "Yes" Next iCell End Sub
以下是海滩漫步的步骤:
- 首先,声明一个变量用作要循环的范围的单元格。
- 之后,启动“For Each”循环并使用“iCell”变量来表示循环期间范围内的每个单元格。
- 接下来,您需要编写一行代码来对循环范围的每个单元格执行活动。
- 最后,终止循环的代码。
使用 VBA 循环整列和一行
以同样的方式,您可以使用以下代码迭代行中的每个单元格,该代码与我们在上一个示例中使用的代码相同,唯一的区别是我们指定的范围。
注意:在浏览整列或整行之前,您应该了解循环可能需要一些时间,并且您的 Excel 可能会冻结几分钟。
Sub vba_loop_range() Dim iCell As Range For Each iCell In Range("A:A").Cells iCell.Value = "Yes" Next iCell End Sub
同样,您可以使用整行作为要遍历的范围。
Sub vba_loop_range() Dim iCell As Range For Each iCell In Range("1:1").Cells iCell.Value = "Yes" Next iCell End Sub
循环动态范围
如果您想迭代动态范围的单元格,请参阅以下代码。
Sub vba_dynamic_loop_range() Dim iCell As Range Dim iRange1 As String Dim iRange2 As String Dim rangeName As String iRange1 = ActiveCell.Address iRange2 = ActiveCell.Offset(5, 5).Address rangeName = iRange1 & ":" & iRange2 For Each iCell In Range(rangeName).Cells iCell = "Yes" Next iCell End Sub