请教个问题。我现在有个EXCEL表格,有600行数据,我想实现随机抓取一定行数(20,30……)再存放起来。抓取次数也可以自由选择(500次,600次,1000次……)。有没有什么好的方法能实现。求大神帮帮忙。
网上找的一段VBA代码来进行随机不重复地提取。它能实现从某列(本例为A1:A600)中随机不重复地提取100个数据,将其放到指定区域(本例为C1:C100)中,但是只能实现随机抽取1次,可是VB我完全看不懂啊,不知道怎么改。
Sub RandomSelect()
Dim TempArr, TheList(1 To 600, 1 To 1) As Variant
TempArr = Range("a1:a600")
For i = 600 To 1 Step -1
j = Int(Rnd * i) + 1
TheList(i, 1) = TempArr(j, 1)
TempArr(j, 1) = TempArr(i, 1)
Next i
Range("l1:l50") = TheList
End Sub
用rand生成随机数,按照随机数去读取一行。如果要不重复,可以用随机数对原始数据排序,然后取前n条。
读取excel表中的数据,放入一个集合中就好了。再进行随你访问即可。