使用VBA在Excel中迭代填充行

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (30)

因此,我试图使用VBA在Excel电子表格中迭代工作表。我想遍历每一行,然后遍历每一列,

我假设行的第一个单元格必须填充,如果不是,那就必须结束。我可以强制执行

我目前的方法是迭代行,然后尝试获取第一个单元格的值,但我无法计算出来。我在这里和其他地方都遇到了使用范围之类的问题,但是没有任何问题可以帮助我编写代码。

目前的做法是:

Set sh = ActiveSheet
RowCount = 0
For Each rw In sh.Rows
    'If Row.Cells(1, 1).Value = "" Then Exit For
    RowCount = RowCount + 1
Next rw
MsgBox (RowCount)

现在,当我运行这个,我得到一些巨大的数字,这是错误的,因为表只有大约25行。我评论了第一行,因为它不起作用。

如果找到第一个单元格为空的行,那么在for循环的第一行中,我也可以更改哪些内容以正确中断?

提问于
用户回答回答于

Dim sh As Worksheet
Dim rw As Range
Dim RowCount As Integer

RowCount = 0

Set sh = ActiveSheet
For Each rw In sh.Rows

  If sh.Cells(rw.Row, 1).Value = "" Then
    Exit For
  End If

  RowCount = RowCount + 1

Next rw

MsgBox (RowCount)
用户回答回答于

为了让任何人搜索类似的信息,请参见工作表。.UsedRange,,,

G.? ActiveSheet.UsedRange.Rows.Count

和循环,例如

For Each loopRow in Sheets(1).UsedRange.Rows: Print loopRow.Row: Next

扫码关注云+社区