Arrays 我需要一个数组,它可以从不同大小的n中取值,并且需要对应于给定的列表
这就是我目前所知道的,但我不知道该怎么办 `子设置列表() Dim UnsortedList(1到100000,1到1)为双精度 我想我会坚持多久 对于i=1到100000 未分类列表(i,1)=Rnd(-i) 接下来我 范围(“A1:A100000”)。值=未排序列表 端接头Arrays 我需要一个数组,它可以从不同大小的n中取值,并且需要对应于给定的列表,arrays,excel,vba,algorithm,Arrays,Excel,Vba,Algorithm,这就是我目前所知道的,但我不知道该怎么办 `子设置列表() Dim UnsortedList(1到100000,1到1)为双精度 我想我会坚持多久 对于i=1到100000 未分类列表(i,1)=Rnd(-i) 接下来我 范围(“A1:A100000”)。值=未排序列表 端接头 Sub InitializeA() Dim i As Long n = Cells(2, 2).value ReDim A(1 To n)
Sub InitializeA()
Dim i As Long
n = Cells(2, 2).value
ReDim A(1 To n)
For i = 1 To n
A(i) = Cells(i, 1).value
Next i
End Sub
下面是一种将列表的一部分打印到电子表格上的方法
Option Explicit
'this generates the list and I need to create an array from this list for different sizes of n
Sub SetUpList()
Dim UnsortedList(1 To 100000, 1 To 1) As Double
Dim i As Long, N As Long
Dim A As Variant, R As Range
For i = 1 To 100000
UnsortedList(i, 1) = Rnd(-i)
Next i
Range("A1:A100000").Value = UnsortedList
N = Cells(2, 2).Value
'this allows us to determine the size of the array which will vary because there can be different sizes of n
Initialize
End Sub
Sub Initialize()
Dim rDest As Range
Dim i As Long, N As Long
Dim A As Variant
Dim UnsortedList As Variant
UnsortedList = Range("A1", Cells(Rows.Count, "A").End(xlUp))
N = Cells(2, 2)
Set rDest = Range("C1")
ReDim A(1 To N, 1 To 1)
For i = 1 To N
A(i, 1) = UnsortedList(i, 1)
Next i
Set rDest = rDest.Resize(rowsize:=N)
rDest.EntireColumn.Clear
rDest = A
End Sub
为什么不将
范围调整为所需大小,然后将所有值一次拉入一个数组?欢迎使用StackOverflow!请访问页面:,因为您的帖子没有对问题的描述,这里也没有明确的问题。您的问题是什么?你想做什么?Range(“A1:A”&n)
我会支持@Comintern动态地将Range拉入数组。有几种方法可以先确定范围大小,然后只拉入所需范围。不过,我们首先需要更多的细节。@RonRosenfield感谢您让我的代码实现了我现在想要的功能。我真的很感激你的帮助help@JonathanAkinrele很乐意帮忙。如果你能把我的回答作为答案,我将不胜感激。