VBA EXCEL

来源:百度知道 编辑:UC知道 时间:2024/09/23 20:23:39
各位高人,我有个问题。B列有一些数据,数量不定,可能是10个,也可能是15个,想在与之对应的A列填充1-10(这个10是B列数据个数,这个容易统计),但1-10是乱序填充。
我能想明白的方法是:在第一个格填充1-10中的随机数,然后在第二格再填充随机数,但要查询筛选已重复……
但我写不出来。
求助求助。

不明白,传个截图看看

Sub abc()
a=Range("B100").End(xlUp).Row
For i = 1 To a
Cells(i, 1) = Int(Rnd() * a) + 1
For j = 1 To i - 1
If Cells(i, 1) = Cells(j, 1) Then
i = i - 1
Exit For
End If
Next j
Next i
End Sub

是不是不要出现重复的随机数?可以写一个循环,如果新生成的随机数和前面生成的随机数相同的话就舍弃它,重新生成一个随机数,依次类推