通过 vbs 在 excel 的第一列中找到第一个空单元格的行号
find the row number of the first empty cell in the first column in excel via vbs
我试图通过 vbscript 在 excel 中找到我的 sheet 中第一个空行的编号。
有人可以帮我解决这个问题吗?
我就是这么做的:
With objSheet
iRow = .Range("A" & .Rows.Count).End(xlUp).Row
End With
msgbox iRow
如果 sheet 为空,则效果不佳。
谢谢!
您可以通过 xlDown
检查是否到达第 1048576 行(这是 sheet 的最后一行)。
您现在修改(使用 xlup)脚本将 return 列中的最后一个非空行;除非该列为空,在这种情况下它将 return 一个 1
。所以如果你想要第一个空行,你需要添加 1
.
除非脚本return是1
。在这种情况下,您需要检查 A1
是否为空,如果是则只添加 1
。
你说的答案是:
With objSheet
If objSheet.Cells(1,1).value = "" Then
iRow = 1
else
iRow = .Range("A" & .Rows.Count).End(xlUp).Row + 1
End If
End With
谢谢大家
要获取列中的第一个空单元格,您可以使用:
With objSheet
If .Range("A1") = "" Then
iRow = 1
ElseIf .Range("A2") = "" Then
iRow = 2
Else
iRow = .Range("A1").End(xlDown).Offset(1, 0).Row
End If
End With
您必须首先检查第一行或第二行是否为空,因为如果第一行非空而第二行为空,End(xlDown)
的行为会有所不同,它可以跳过它并且 returns错误的值。
我试图通过 vbscript 在 excel 中找到我的 sheet 中第一个空行的编号。 有人可以帮我解决这个问题吗? 我就是这么做的:
With objSheet
iRow = .Range("A" & .Rows.Count).End(xlUp).Row
End With
msgbox iRow
如果 sheet 为空,则效果不佳。 谢谢!
您可以通过 xlDown
检查是否到达第 1048576 行(这是 sheet 的最后一行)。
您现在修改(使用 xlup)脚本将 return 列中的最后一个非空行;除非该列为空,在这种情况下它将 return 一个 1
。所以如果你想要第一个空行,你需要添加 1
.
除非脚本return是1
。在这种情况下,您需要检查 A1
是否为空,如果是则只添加 1
。
你说的答案是:
With objSheet
If objSheet.Cells(1,1).value = "" Then
iRow = 1
else
iRow = .Range("A" & .Rows.Count).End(xlUp).Row + 1
End If
End With
谢谢大家
要获取列中的第一个空单元格,您可以使用:
With objSheet
If .Range("A1") = "" Then
iRow = 1
ElseIf .Range("A2") = "" Then
iRow = 2
Else
iRow = .Range("A1").End(xlDown).Offset(1, 0).Row
End If
End With
您必须首先检查第一行或第二行是否为空,因为如果第一行非空而第二行为空,End(xlDown)
的行为会有所不同,它可以跳过它并且 returns错误的值。