将字符串范围存储在数组(vba)中



目标是创建一个包含声明范围内项的数组。很简单,但我无法让它发挥作用。。。

'Declaration
Dim Measures As Variant
Dim MeasureRows As Long
'Search and store
Sheets(4).Activate
MeasureRows = Range("A" & Rows.Count).End(xlUp).row
Measures = Range(Cells(2, 1), Cells(MeasureRows, 1)).Value2 

MeasureRows填充良好,但当我检查Measures时,它是空的。例如

?MeasureRows
780 
?Measures(MeasureRows) 'Returns "Subscript out of range"    
?Measures(1) 'Returns "Subscript out of range"

当谈到VBA时,我是个新手,所以请原谅这个基本问题。我试着在网上搜索答案,但一无所获。我想我只是不知道搜索词的正确术语。

从纸张读取时为二维

Option Explicit
Public Sub test()
Dim Measures As Variant
Dim MeasureRows As Long
With Worksheets("Sheet4")
MeasureRows = .Cells(.Rows.Count, "A").End(xlUp).Row
Measures = .Range(.Cells(2, 1), .Cells(MeasureRows, 1)).Value2
End With
Dim i As Long
For i = LBound(Measures, 1) To UBound(Measures, 1)
Debug.Print Measures(i, 1)
Next
Stop
End Sub

最新更新