我正在寻找两种不同类型的选择代码。一个代码将在L形状中选择一列中的所有行以及一行中的所有列。在具有A1:A10范围内的数据和仅来自col A-K的第10行中的数据的示例中。选择看起来像L。如何在不知道有多少行或列包含数据的情况下执行此操作?
第二个代码将具有相同的数据,但需要在该示例中选择整个范围A1:K10,但代码需要选择具有该数据的任何范围。
答案 0 :(得分:0)
我找到了答案。我必须做一个工会。这是最后的联合代码。
Sub mywork()
Dim ws As Worksheet
Dim lRow As Long, lCol As Long
Dim rng As Range
'~~> Set this to the relevant worksheet
Set ws = [Sheet1]
With ws
'~~> Get the last row and last column
lRow = .Range("A" & .Rows.Count).End(xlUp).Row
lCol = .Cells(lRow, .Columns.Count).End(xlToLeft).Column
'~~> Set the range
Set rng = .Range(.Cells(lRow, 1), .Cells(lRow, lCol))
End With
Set rng = Application.Union(Range("A1:A" & lRow), rng)
rng.Select
End Sub
答案 1 :(得分:0)
activesheet.usedrange.address
应告诉您使用的范围。
在你的情况下,这样的事情应该有效:[sheet1].usedrange.select
(替换模块中的所有代码)
这里的好处是你不是很难编码" A1:A"对于最后识别的单元格,如果顶部有空行,则效果很好。