查找特定范围列的最后一行

时间:2016-05-06 16:16:28

标签: excel excel-vba vba

我的表格范围为“A:EV”。

我想找到范围“A:DD”的最后一行。

列可能包含空白单元格,因此我需要遍历所有列并找到A到DD列的最远行。

我该如何编码?

3 个答案:

答案 0 :(得分:1)

HERE修改

Sub foo()


With Sheets("Sheet9") 'Change to your sheet
    If Application.WorksheetFunction.CountA(.Cells) <> 0 Then
        lastrow = .Range("A:DD").Find(What:="*", _
                      After:=.Range("A1"), _
                      Lookat:=xlPart, _
                      LookIn:=xlFormulas, _
                      SearchOrder:=xlByRows, _
                      SearchDirection:=xlPrevious, _
                      MatchCase:=False).Row
    Else
        'Used 1000 to prove that it was not defaulting to this.
        'Change to 1 when using in actual code.
        lastrow = 1000 'Change to 1 when using. 
    End If
    MsgBox lastrow
End With
End Sub

enter image description here

答案 1 :(得分:0)

要稍微调整范围,请更改这两行中的两列字母。

这一行搜索A:DD列。

lastrow = .Range("A:DD").Find(What:="*", _
                      After:=.Range("A1"), _

此版本将搜索范围缩小到Y:DD

lastrow = .Range("Y:DD").Find(What:="*", _
                      After:=.Range("Y1"), _

答案 2 :(得分:0)

还有一点伏都教,如果您有兴趣同时获得找到最后一行的列,但又不想从.Address中提取它,请使用此。

user_info