excel:usedrange with table of columns

时间:2017-05-29 12:53:15

标签: excel vba excel-vba

有没有办法使用UsedRange从表中的第一列到最后一列进行选择?

以下是原始代码:

Worksheets("Sheet1").UsedRange.Columns("E").Cells

但它从Excel的第一行到最后一行获得,我不想要这个。所以我试着做这样的事情:

Dim LastRow As Integer
    Dim ws As Worksheet

Set ws = Worksheets("Sheet1")
  LastRow = ws.Cells(Rows.Count, 1).End(xlUp).Row  

With ws.UsedRange.Columns("E2:E & LastRow").Cells

虽然这似乎在这里不起作用,所以我怀疑是否有正确的方法来执行此操作或者UsedRange它不是最好的。

此外,在此之后我想使用Jeeped提供的THIS代码,但我需要知道是否可以先解决这个问题。

2 个答案:

答案 0 :(得分:3)

您可以直接使用该范围,

with ws
    with .range(.cells(1, "E"), .cells(.rows.count, "E").end(xlup))
        'do something with the cells in column E
    end with
end with

您可以将.UsedRange与Intersect一起使用

with Intersect(ws.UsedRange, ws.columns("E"))
    'do something with the cells in column E
end with

答案 1 :(得分:0)

试试这个,但绝不要使用.Select

With ws 
    .Range("E2:E" & LastRow).Select
End with