两件事,VBA不支持数组切片,因此无论您使用什么,都必须自己滚动。但是,由于这仅适用于Excel,因此您可以使用内置工作表函数索引进行数组切片。Sub Test() 'All example return a 1 based 2D array. Dim myArr As Variant 'This var must be generic to work. 'Get whole range: myArr = ActiveSheet.UsedRange 'Get just column 1: myArr = WorksheetFunction.Index(ActiveSheet.UsedRange, 0, 1) 'Get just row 5 myArr = WorksheetFunction.Index(ActiveSheet.UsedRange, 5, 0)End Sub