2011-04-26 106 views
1

如何从动态数组读取数据?Excel宏 - 从数组读取数据

ReDim idx(1 To nItemsToPick) 
ReDim varRandomItems(1 To nItemsToPick) 
For i = 1 To nItemsToPick 
    Do 
     booIndexIsUnique = True 
     idx(i) = Int(nItemsTotal * Rnd + 1) 
     For j = 1 To i - 1 
      If idx(i) = idx(j) Then 
       booIndexIsUnique = False 
       Exit For 
      End If 
     Next j 
     If booIndexIsUnique = True Then 
      Exit Do 
     End If 
    Loop 
    varRandomItems(i) = rngList.Cells(idx(i), 1) 
Next i 

谢谢!

+0

你的数组来自哪里? – jonsca 2011-04-26 08:21:54

+0

你是什么意思Jonsca? – CustomX 2011-04-26 08:22:50

+0

您的阵列数据在同一张纸上吗?一张不同的纸?在一个文件? :) – jonsca 2011-04-26 08:23:58

回答

1

不知何故,您必须让用户输入起始单元格以及他们是否想要水平或垂直数据。

然后,如果用户输入“A1”,并有10个元件和方向是水平的,你需要把它转换成一个字符串 - >“A1:A10”

Range("A1:J10") = varRandomItems 

Range("A1:A10") = Application.Transpose(varRandomItems) 

(道歉,我忘了如何把字符串放在一起)

+0

谢谢!很容易接受LOL和道歉; P – CustomX 2011-04-26 08:41:37