我正在尝试在Excel工作表中选择一个范围,但我无法弄清楚如何。数据的方式是Row 2
所有单元格都填充到最后,Column A
所有单元格都填充到底部。但在表格中可能有空单元格。所以右下角也可以是空的。我希望范围从A3
开始。
我试图以这种方式选择范围:
Range("A3",Range("ZZ2").End(xlToLeft).Range("A1000000").End(xlUp)).Select
或者这样:
Range("A3",Range("A1000000").End(xlUp).Range("ZZ2").End(xlToLeft).).Select
但无论哪种方式,整个表都不会被选中,因为右下角的单元格中没有任何内容。我觉得必须有一个简单的解决方案,但我无法看到它。
这是表格的简单示例。我想要选择的范围是绿色区域。
答案 0 :(得分:1)
看看这段代码。它将分别计算出最后一列和最后一行 - 假设您至少有一行和一列完全填写。查看示例数据,我已经采用了标题行(= 2)和第一列(= A)
Dim r As Range, row As Long, col As Long
With ActiveSheet
' Look in Col A (=1) to figure out number of rows
row = .Cells(.Rows.Count, 1).End(xlUp).row
' Look in Row 2 to figure out number of columns
col = .Cells(2, .Columns.Count).End(xlToLeft).Column
Set r = .Range(.Cells(3, 1), .Cells(row, col))
End With
Debug.Print r.Address
答案 1 :(得分:0)
尝试,
range(cells(3, "A"), cells(2, columns.count).end(xltoleft).offset(cells(rows.count, "A").end(xlup).row - 2, 0)).select