如何获得无限的范围在vba

Dim Brand As String Worksheets("1st").Select Brand = Range() 

嗨,我在微软Excel 2011中使用VBA编码,我有点卡住范围。 比方说,我想开始在单元格c4中的东西,我在范围内的c4input,但如果我然后希望它继续,直到一路下降列(无限,因为我们不知道该列中有多less行将被填充),那么写这个的正确方法是什么?

 Range("C4", Range("C4").End(xlDown)) 

这将返回范围,C4到C4和向下。

这将从C4中select所有连续的单元格直到第一个空白单元格。

现在,如果Data有可能在非空白单元格之间空白。 然后你可以使用以下内容:

 Range("C4", Range("C" & Rows.Count).End(xlUp)) 

这将selectC到C列中的最后一个单元格直到具有数据的单元格。 换句话说,这将从C4中selectC列中的每个单元格,直到整个列中的最后一个单元格为一个值,并包含空格。

其他方式

 Sub Main() Dim Brand As String Dim lastRow As Long Dim rng As Range, cell As Range Dim sht As Worksheet Set sht = ThisWorkbook.Worksheets("1st") With sht lastRow = .Range("C" & .Rows.Count).End(xlUp).Row End With If lastRow < 4 Then lastRow = 4 Set rng = sht.Range("C4:C" & lastRow) For Each cell In rng MsgBox cell.Value Next End Sub