如何使用 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

以下是海滩漫步的步骤:

  1. 首先,声明一个变量用作要循环的范围的单元格。
    loop-through-range
  2. 之后,启动“For Each”循环并使用“iCell”变量来表示循环期间范围内的每个单元格。
    use-icell-variable
  3. 接下来,您需要编写一行代码来对循环范围的每个单元格执行活动。
    write-a-line-of-code
  4. 最后,终止循环的代码。
    end-the-code-for-a-loop

使用 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

添加评论

您的邮箱地址不会被公开。 必填项已用 * 标注