Sub Driver()
'Highlights driver who have 1 point
Dim driverData ' array variable to hold driver names
driverData = Range("C2:C391").Value
ReDim driverData(390)
MsgBox driverData(3)
尽管 Range("C2:C391") 在工作表中有值,但数组似乎只有 空白
因此,使用 MsgBox 命令,只有 空白 出现
最佳答案
当您只使用 ReDim
时你破坏了数组中的所有内容。您需要使用 ReDim Preserve
保留数组中的元素。
话虽如此,您不能简单地将 2D 数组重新调整为 1D 数组。你可以这样做:
Sub test()
Dim driverData As Variant
Dim newArray() As String
driverData = Range("C2:C391").Value
ReDim newArray(1 To UBound(driverData, 1))
For i = 1 To UBound(driverData)
newArray(i) = driverData(i, 1)
Next
MsgBox newArray(3)
End Sub
关于vba - 范围没有被复制到数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8505627/