Private Sub Command1_Click() Dim R As Integer Dim Arr() Dim i As Integer i = 0 Randomize (Time) Do While i < 10 R = Int(Rnd * 8999) + 1000 '限定奖号为四位数 ReDim Preserve Arr(i) Arr(i) = R i = i + 1 List1.AddItem R Loop End Sub '这只管抽奖,不能保证号不重复,还有几分钟就上班了,不写了
Private Sub Command1_Click() Dim R As Integer Dim Arr() Dim i As Integer List1.Clear Randomize (Time) R = Int(Rnd * 8999) + 1000 '限定奖号为四位数 List1.AddItem R ReDim Preserve Arr(0) Arr(0) = R i = 1 Do While i < 10 R = Int(Rnd * 8999) + 1000 b = Filter(Arr, R, True, vbTextCompare) If Join(b) = "" Then ReDim Preserve Arr(i) List1.AddItem R i = i + 1 End If Loop End SubPrivate Sub Command2_Click() Dim a, b, c, d As IntegerDim Arr() Dim i As Integer List1.Clear Randomize (Time) a = Int(Rnd * 10) b = Int(Rnd * 10) c = Int(Rnd * 10) d = Int(Rnd * 10) R = Str(a) & Str(b) & Str(c) & Str(d) List1.AddItem R ReDim Preserve Arr(0) Arr(0) = R i = 1 Do While i < 10 a = Int(Rnd * 10) b = Int(Rnd * 10) c = Int(Rnd * 10) d = Int(Rnd * 10) R = Str(a) & Str(b) & Str(c) & Str(d) b = Filter(Arr, R, True, vbTextCompare) If Join(b) = "" Then ReDim Preserve Arr(i) List1.AddItem R i = i + 1 End If Loop End Sub'以上两个都将重复的号码除了
(1)用Randomize函数初始化种子.
(2)在一循环里用Rnd 抽出你要的号码,重复的丢弃,不重复的放入数组,直到抽出你所需要的所有号码
(3)输出数组
Dim R As Integer
Dim Arr()
Dim i As Integer
i = 0
Randomize (Time)
Do While i < 10
R = Int(Rnd * 8999) + 1000 '限定奖号为四位数
ReDim Preserve Arr(i)
Arr(i) = R
i = i + 1
List1.AddItem R
Loop
End Sub
'这只管抽奖,不能保证号不重复,还有几分钟就上班了,不写了
Dim R As Integer
Dim Arr()
Dim i As Integer
List1.Clear
Randomize (Time)
R = Int(Rnd * 8999) + 1000 '限定奖号为四位数
List1.AddItem R
ReDim Preserve Arr(0)
Arr(0) = R
i = 1
Do While i < 10
R = Int(Rnd * 8999) + 1000
b = Filter(Arr, R, True, vbTextCompare)
If Join(b) = "" Then
ReDim Preserve Arr(i)
List1.AddItem R
i = i + 1
End If
Loop
End SubPrivate Sub Command2_Click()
Dim a, b, c, d As IntegerDim Arr()
Dim i As Integer
List1.Clear
Randomize (Time)
a = Int(Rnd * 10)
b = Int(Rnd * 10)
c = Int(Rnd * 10)
d = Int(Rnd * 10)
R = Str(a) & Str(b) & Str(c) & Str(d)
List1.AddItem R
ReDim Preserve Arr(0)
Arr(0) = R
i = 1
Do While i < 10
a = Int(Rnd * 10)
b = Int(Rnd * 10)
c = Int(Rnd * 10)
d = Int(Rnd * 10)
R = Str(a) & Str(b) & Str(c) & Str(d)
b = Filter(Arr, R, True, vbTextCompare)
If Join(b) = "" Then
ReDim Preserve Arr(i)
List1.AddItem R
i = i + 1
End If
Loop
End Sub'以上两个都将重复的号码除了