是否有更好的方法可以在不运行整页代码的情况下准确计算表的行数?
我目前正在使用sheet1.usedrange.rows.count
,但这甚至会计算以前使用的空白行或行,但稍后会清除内容。
之前我使用过LastRow = Sheet1.Cells(Sheet1.Cells.Rows.Count, "M").End(xlUp).Row
但我现在无法使用此列,因为列M或其他任何列都可以包含空白单元格。
我只需要轻松删除没有任何包含内容的单元格的行。
萨拉
答案 0 :(得分:-1)
您可以遍历表格的每一列,例如:
Sub LastUsedRowInRange()
Dim sh As Worksheet
Dim dLastRow As Double
Dim dCurrRow As Double
Dim sRange As String
Dim rn As Range
Dim i As Integer
Dim iFirstCol As Integer
Dim iLastCol As Integer
Set sh = Sheets("Sheet1")
sRange = "A1:P30"
Set rn = sh.Range(sRange)
iFirstCol = rn.Column
iLastCol = rn.Columns.Count + rn.Column - 1
For i = iFirstCol To iLastCol
With sh
dCurrRow = .Range(Cells(.Rows.Count, i), Cells(.Rows.Count, i)).End(xlUp).Row
dLastRow = IIf(dCurrRow > dLastRow, dCurrRow, dLastRow)
End With
Next
Debug.Print dLastRow
End Sub