选择整行数据

时间:2011-10-25 06:04:16

标签: excel-vba vba excel

我想要选择一行数据(A3到A11)(此范围内没有空白)。我使用以下代码:

Range(ws.Range("A3"), ws.Range("A3").End(xlToRight)).Select

但是,此代码仅选择单元格A3而不选择A3至A11。我也尝试了xlToLeft,但它仍然只选择了A3 ......我怎么能纠正这个?感谢。

7 个答案:

答案 0 :(得分:9)

由于你的标题,这里有几种方法可以选择一行

ws.Rows(3).Select
ws.Range("a3").EntireRow.Select

选择一行中的所有数据,

ws.Range("A3",ws.Cells(3,ws.Columns.Count).End(xlToLeft)).Select

同样在你的例子中,你错过了“ws”。来自最外层范围对象的前缀 - 如果不指定工作表,Excel将尝试引用ActiveSheet,您刚刚编写了一个潜在的错误。

答案 1 :(得分:1)

我认为这与Populating a list box with data from worksheet重叠。我建议你在原帖

中继续解决与此主题相关的任何问题

根据先前的垂直选择问题,您使用xlDown和xlUp(不是xltoRight或xltoLeft)

ws.Range(ws.[a3], ws.Cells(Rows.Count, "A").End(xlUp))

答案 2 :(得分:0)

您需要选择A3到A11的范围。这可以解决问题

  activesheet.range("A3:A11").select  or
  activesheet.range(cells(3,"A"),cells(11,"A")).select  or
  activesheet.range(cells(3,1),cells(11,1)).select 

答案 3 :(得分:0)

怎么样:

a = Range("A11").End(xlToRight).Address
Range("A3:" & a).Select

答案 4 :(得分:0)

RANGE("A1", Cells(RANGE("A23").row, Columns.Count).End(xlToLeft)).Select    'YES

答案 5 :(得分:0)

试试这个...

ActiveSheet.UsedRange.EntireRow.Select

答案 6 :(得分:0)

要动态选择整行(当前活动单元格),请尝试以下VBA代码段:

ActiveSheet.Range(Selection, Selection).EntireRow.Select