要求:点开始按钮,文本框开始滚动显示人名,点确定按钮,文本框停止滚动,这时显示的人名的中奖人名。同时此次中奖的人名被剔除数据库,不再参与下轮抽奖。
谢谢
參考答案:'作者:高攀峰
'2007-1-24 12:41
Option Explicit
Dim kt As Boolean
Dim 中奖候选人() As String
Dim tmp_ren() As String
Dim 剩余人选 As Integer
Dim i As Integer
Dim j As Long
Private Sub Command1_Click() '抽奖按钮
kt = Not kt
If kt = True Then Call 中奖
End Sub
Private Sub Form_Load()
Dim x As Integer
剩余人选 = 100
ReDim 中奖候选人(剩余人选) As String
ReDim tmp_ren(剩余人选) As String
For x = 1 To 剩余人选
中奖候选人(x) = "中奖人" & CStr(x)
tmp_ren(x) = 中奖候选人(x)
Next
End Sub
Private Sub 中奖()
'On Error Resume Next
If 剩余人选 < 96 Then
MsgBox "已经抽过5次奖了"
Exit Sub
End If
For j = 1 To ***********
If j > *********** Then j = 0
If kt = True Then
If j Mod 200 = 0 Then
i = i + 1
If i > 剩余人选 Then i = 1
Text1.Text = 中奖候选人(i)
End If
Else
'MsgBox "中奖人:" & 中奖候选人(i)
Print 中奖候选人(i)
剩余人选 = 剩余人选 - 1
ReDim 中奖候选人(剩余人选) As String
Dim k As Integer
For k = 1 To 剩余人选
If k < i Then
中奖候选人(k) = tmp_ren(k)
Else
中奖候选人(k) = tmp_ren(k + 1)
End If
Next
ReDim tmp_ren(剩余人选) As String
For k = 1 To 剩余人选
tmp_ren(k) = 中奖候选人(k)
Next
Exit Sub
End If
DoEvents
Next
End Sub