程序代码:
Private Sub Command1_Click()
Dim myarray() As String
Dim myrows
With Text1
myarray = Split(.Text, vbCrLf)
myrows = UBound(myarray)
Randomize
Text2.Text = Text2.Text & vbCrLf & myarray(Int(Rnd * myrows + 1))
End With
End Sub
Private Sub Form_Load()
Text1.Text = "请输入抽奖名单:" & vbCrLf & _
"张飞" & vbCrLf & _
"关与" & vbCrLf & _
"六倍" & vbCrLf & _
"诸葛" & vbCrLf & _
"曹操" & vbCrLf & _
"孙权"
Text2.Text = "幸运观众:"
End Sub
学习心得:
1、Rnd 函数返回小于 1 但大于或等于 0 的值。即Rnd取值 [0,1)。
2、Randomize 语句初始化随机数生成器,该生成器具有根据系统计时器得到的种子。
3、为了生成某个范围内的随机整数,可使用以下公式:
Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
这里,upperbound 是随机数范围的上限,而 lowerbound 则是随机数范围的下限。
取值为:[lowerbound,upperbound]