城东小巷分享 http://blog.sciencenet.cn/u/chengdong166

博文

PPT抽奖-姓名滚动且不重复

已有 24421 次阅读 2016-2-23 13:20 |个人分类:PPT|系统分类:科普集锦| PPT, 程序, 抽奖

1、PPT界面

 

2、相关代码:

 

Option Explicit
Dim i
Dim flag As Boolean
Dim changArray As Boolean
Dim temp As Integer
Dim newArr() As String

Private Sub sleep(ByRef n As Long)
   Dim x As Long
   x = Timer * 1000 + n
   Do While x >= Timer * 1000
       DoEvents
   Loop
End Sub

Private Sub CommandButton1_Click()
 Dim names As String
 Dim nameArray() As String

 names = TextBox1.Text
 nameArray = Split(names, " ")
       
 If changArray Then
   nameArray = newArr
   For i = temp To UBound(nameArray) - 1
       nameArray(i) = nameArray(i + 1)
   Next i
   ReDim Preserve nameArray(UBound(nameArray) - 1)
   newArr = nameArray
   changArray = False
 End If
 
 Dim lenNum
 lenNum = UBound(nameArray) - LBound(nameArray) + 1
 
 Randomize
 
 For i = 1 To 100000
   Dim showNum As Integer
   showNum = Int(Rnd * (lenNum))
   TextBox2.Text = nameArray(showNum)
   If flag Then
    flag = False
    newArr = nameArray
    temp = showNum
    Exit For
   End If
 
   sleep 50
  Next
End Sub


Private Sub CommandButton2_Click()
 flag = True
 changArray = True
End Sub

 



https://blog.sciencenet.cn/blog-448935-958052.html

上一篇:读书笔记摘抄<一>
下一篇:有趣的Boy
收藏 IP: 122.189.240.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-7-18 05:25

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部