615927140 发表于 2016-4-12 13:30:25

怎么让 人名不重复随机出现

各位大侠,帮帮忙,附件是一个抽奖程序,共20人,怎么能让这20人不重复出现,也就是说随机出现过一次之后,以后不会在出现

user_tfmma 发表于 2016-4-12 15:56:47

急用,拜托啦

user_irkec 发表于 2016-4-12 16:10:40

我也想知道

user_wowcuzqq 发表于 2016-4-12 17:57:05

Sub ddd()
    Dim strName(10) As String, str中奖人 As String, i As Integer, l As Integer
    strName(1) = "张三1"
    strName(2) = "张三2"
    strName(3) = "张三3"
    strName(4) = "张三4"
    strName(5) = "张三5"
    strName(6) = "张三6"
    strName(7) = "张三7"
    strName(8) = "张三8"
    strName(9) = "张三9"
    strName(10) = "张三10"
    k = 10
    Do
      i = RndInt(1, k)
      str中奖人 = strName(i)
      MsgBox str中奖人
      If i < k Then
            For l = i To k - 1
                strName(l) = strName(l + 1)
            Next l
      End If
      k = k - 1
    Loop Until k < 1
End Sub
Function RndInt(a, b)'产生一个a、b之间的随机整数
    Randomize
    RndInt = Int((b - a + 1) * Rnd + a)
End Function
页: [1]
查看完整版本: 怎么让 人名不重复随机出现