|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
Function UsedEndRngycy(Optional nm As String, Optional rc = 4) '已使用区域最后一下单元格
Application.Volatile
Dim r As Range, c As Range
If Len(nm) = 0 Then nm = ActiveSheet.Name
'rc =1获取最后一个已使用单元格的行标
'rc =2获取最后一个已使用单元格的数字列标
'rc =3获取最后一个已使用单元格的字母列标
'rc =4获取最后一个已使用单元格的相对地址
Set c = Sheets(nm).Cells.Find("*", After:=Range("A1"), SearchOrder:=xlColumns, SearchDirection:=xlPrevious)
Set r = Sheets(nm).Cells.Find("*", After:=Range("A1"), SearchOrder:=xlRows, SearchDirection:=xlPrevious)
If r Is Nothing Then
UsedEndRngycy = "A1"
Else
If rc = 1 Then
UsedEndRngycy = r.Row
ElseIf rc = 2 Then
UsedEndRngycy = c.Column
ElseIf rc = 3 Then
UsedEndRngycy = Split(Cells(r.Row, c.Column).Address, "$")(1)
Else
UsedEndRngycy = Cells(r.Row, c.Column).Address(0, 0)
End If
End If
End Function
例如:
=UsedEndRngycy(,1)
得到有数据的最后一行的行值。
|
|