VBA – 从数组中选取范围(F $ 1:F $ 100)中的值
我尝试使用一系列选定单元格的值创build一个数组。
我到目前为止是如下:
ActiveSheet.Range("$F$3:$F$100").Select varGetArrayAll = Selection
但它只创build第一个单元格F3的数组。
如果有人能帮助我,我将不胜感激。
如果您想将Range设置为一维数组,请使用Application.Transpose
,如下所示:
varGetArrayAll = Application.Transpose(ActiveSheet.Range("$F$3:$F$100").Value)
然而,你不应该依赖于ActiveSheet
,你应该完全限定你的Range
与工作表是在,如下面的代码:
' replace "Sheet1" with your sheet's name varGetArrayAll = Application.Transpose(Worksheets("Sheet1").Range("$F$3:$F$100").Value)
试试像这样:
Public Sub TestMe() Dim vargetArrayAll As Range 'or as Variant, to look like your code. Dim counter As Long Set vargetArrayAll = Selection For counter = 1 To vargetArrayAll.Count Debug.Print vargetArrayAll(counter) Next counter End Sub
因此,您将该值设置为一个范围,并且可以像访问数组一样访问其元素。 但是,您从1
开始,而不是0
。