使用End和UsedRange获得的范围,都是包含有空格、公式等内容的,虽然他们看起来是空的,实际上存储了内容,需要判断你的标准的空白单元格,只有逐一判断,可能速度有点慢:
Option Explicit
Sub 隐藏A列最后一个显示有内容之后的行()
Dim n
n = Cells(Rows.Count, 1).End(xlUp).Row
While n > 1 And Cells(n, 1) = ""
n = n - 1
Wend
n = n + 1
Range(n & ":" & Rows.Count).EntireRow.Hidden = True
End Sub